summaryrefslogtreecommitdiffstats
path: root/perl-install/standalone.pm
Commit message (Collapse)AuthorAgeFilesLines
* workaround crahsing while handling strange DBus errors (hacky :-() such as:Thierry Vignaud2008-09-291-1/+1
| | | | | | | | | | | | "org.freedesktop.Hal.NoSuchDevice: No device with id /org/freedesktop/Hal/devices/volume_uuid_0d60bf68_9e31_46b5_b98a_ac61d2f96352" which results in: "Operation "eq": no method found, left argument in overloaded package Net::DBus::Error, right argument in overloaded package Net::DBus::Error at /usr/lib/libDrakX/standalone.pm line 199."
* enable to disable it trough the DISABLE_DRAKBUG environment variableThierry Vignaud2008-09-231-2/+4
|
* - drakbug:Pascal Rigaux2008-02-291-1/+1
| | | | | | o do not catch exception if $^S is undef (occurs when "eval { require foo }" and foo.pm do "use not_available")
* fix titi typoPascal Rigaux2008-02-051-1/+1
|
* bump copyright yearThierry Vignaud2008-01-231-1/+1
|
* keep buggy process around so that we can run gdb on it (if perl segfaulted)Thierry Vignaud2007-11-061-1/+2
|
* (bug_handler) nicer formatting for real segfaultsThierry Vignaud2007-09-131-0/+1
|
* (bug_handler) distinct exceptions from SEGV, thus restoring catchingThierry Vignaud2007-09-131-4/+4
| | | | | SEGV and preventing looping while segfaulting again
* (bug_handler) do a "normal" die if drakbug is not presentThierry Vignaud2007-08-091-1/+1
|
* fix fetching translations from "libDrakX-standalone" domain (#32402)Thierry Vignaud2007-08-081-0/+2
|
* (bug_handler) make it more readableThierry Vignaud2007-08-061-0/+6
|
* (bug_handler) better testThierry Vignaud2007-08-061-1/+1
|
* exceptions with "\n" are considered normal ways to quit and thus do not fire upThierry Vignaud2007-08-061-0/+5
| | | | | drakbug (eg: #32292)
* (bug_handler) drakbug: do not report "wizcancel" exceptions (#32308)Thierry Vignaud2007-08-061-2/+2
|
* (bug_handler) explainThierry Vignaud2007-08-021-0/+3
|
* report real version on --help, set by MakefieThierry Vignaud2007-08-021-1/+4
|
* (bug_handler) prevent looping if drakbug crashesThierry Vignaud2007-08-021-0/+4
|
* (bug_handler) display full backtraceThierry Vignaud2007-08-021-0/+1
|
* (bug_handler) do not fsck up exceptions in eval { }Thierry Vignaud2007-08-021-0/+1
|
* provide drakbug with the perl backtraceThierry Vignaud2007-08-011-2/+3
|
* report ordinary crash (unhandled exceptions, not seg faults) on bugzilla tooThierry Vignaud2007-08-011-1/+7
|
* centralize common textdomains in a single common place, thus ensuring ↵Thierry Vignaud2007-06-281-1/+0
| | | | they'll be binded (#31580)
* re-sync after the big svn lossPascal Rigaux2007-04-251-5/+6
|
* add support for $::no_global_argv_parsing, enabling to NOT using common optionThierry Vignaud2005-12-221-1/+2
| | | | | managemnt (eg: when using Getopt)
* allow common.pm and standalone.pm to be used in drakxtools-backend without ↵Pascal Rigaux2005-12-181-2/+4
| | | | perl-Locale-gettext
* use Locale::gettext for dgettext, bindtextdomain and bind_textdomain_codeset ↵Pascal Rigaux2005-12-151-1/+1
| | | | | | | instead of module c (that way we can also use dngettext, and it's more modular)
* - fix typoDaouda Lo2005-09-131-1/+1
|
* rename setlocale() as init_setlocale() since it's more meaninfull regarding ↵Thierry Vignaud2005-06-301-1/+1
| | | | its purpose
* class_discard is a bad idea, now unused, so drop itPascal Rigaux2005-06-101-1/+1
|
* mandrakelinux -> Mandriva LinuxPablo Saratxaga2005-04-231-4/+4
|
* switch from MandrakeSoft to MandrivaThierry Vignaud2005-04-211-3/+3
|
* switch from MandrakeSoft to Mandriva in copyright noticesThierry Vignaud2005-04-211-1/+1
|
* help perlPascal Rigaux2005-03-101-2/+2
|
* log program exitingThierry Vignaud2005-03-081-1/+14
|
* better english (writing style rather than spoken one)Thierry Vignaud2004-12-131-3/+3
|
* (version) print translated usage message (#5657)Thierry Vignaud2004-09-291-1/+2
|
* aspell's typo fixesThierry Vignaud2004-08-231-1/+1
|
* Remove a perl compilation warningRafael Garcia-Suarez2004-08-131-6/+5
|
* perl_checker cleanupsThierry Vignaud2004-08-111-2/+2
|
* perl_checker compliancePascal Rigaux2004-08-111-3/+3
|
* s/Mandrake/MandrakelinuxFunda Wang2004-08-081-3/+3
|
* (rename) only log succesfull renamingsThierry Vignaud2004-07-221-1/+1
|
* MandrakeSoft -> MandrakesoftPascal Rigaux2004-07-201-1/+1
|
* XFree 3 is gone!Pascal Rigaux2004-05-031-1/+1
|
* (version) bump release numberThierry Vignaud2004-04-301-1/+1
|
* $::noBorder is deprecated (it was the same as !$::isInstall)Pascal Rigaux2004-02-041-1/+0
|
* http://www.gnu.org/prep/standards_18.html says --help and --version are ↵Guillaume Cottenceau2004-02-041-2/+2
| | | | printed on standard output
* update drakfont help messageThierry Vignaud2004-02-021-2/+4
|
* bump copyrightThierry Vignaud2004-02-021-1/+1
|
* --help: documente new drakboot and drakconnect parametersThierry Vignaud2004-02-021-0/+12
|
"hl opt">=> [ qw(isofs loop squashfs) ], local => [ if_(arch() =~ /^ppc/, qw(hfs)), qw(reiserfs reiser4 jfs xfs ntfs vfat ext3 ext4), ], various => [ qw(romfs ufs unionfs) ], }, ################################################################################ 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(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-cs4231 snd-cs4232 snd-cs4236 snd-cs4281 snd-cs46xx snd-cs5530 snd-cs5535audio), 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-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-indigoio snd-intel8x0 snd-interwave), qw(snd-interwave-stb snd-korg1212 snd-layla20 snd-layla24 snd-layla3g), 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) ], dvb => [ qw(b2c2-flexcop-pci b2c2-flexcop-usb budget budget-av budget-ci cinergyT2), qw(dvb-dibusb dvb-ttpci dvb-ttusb-budget dvb-usb-a800 dvb-usb-cxusb), qw(dvb-usb-dib0700 dvb-usb-dibusb-mb dvb-usb-dibusb-mc dvb-usb-digitv dvb-usb-dtt200u), qw(dvb-usb-gp8ps dvb-usb-nova-t-usb2 dvb-usb-ttusb2 dvb-usb-umt-010 dvb-usb-vp702x dvb-usb-vp7045), qw(hexium_gemini hexium_orion pluto2 skystar2 ttusb_dec), ], photo => [ qw(dc2xx mdc800) ], radio => [ qw(radio-gemtek-pci radio-maestro radio-maxiradio) ], scanner => [ qw(scanner microtek) ], 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 input stuff get automagically loaded by hotplug and thus # magically work through /dev/input/mice multiplexing: input => { joystick => [ qw(iforce 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) ], 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) ], }, 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), ], mouse => [ qw(atixlmouse busmouse generic_serial inport ioc3_serial logibm logibusmouse msbusmouse pcips2 qpmouse synclinkmp), if_(arch() =~ /ppc/, 'macserial'), qw(mousedev usbhid usbmouse), ], 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), ], laptop => [ qw(i8k sonypi toshiba), ], serial => [ 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(parport_pc parport_serial), qw(btaudio mmc_block), 'cryptoloop', arch() =~ /i.86/ ? 'aes-i586' : 'aes', if_(arch() =~ /sparc/, 'openprom'), qw(evdev), qw(usblp printer), 'floppy', #- these need checking qw(rrunner meye), ], 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), ], }, ); my %moddeps; sub load_dependencies { my ($file, $o_root) = @_; %moddeps = (); foreach (cat_($o_root . $file)) { my ($m, $d) = split ':'; my $path = $m; my ($filename, @fdeps) = map { s![^ ]*/!!g; s!\.ko!!g; s!\.gz!!g; $_; } $m, split(' ', $d); my ($modname, @deps) = map { filename2modname($_) } $filename, @fdeps; $moddeps{$modname}{deps} = \@deps; $moddeps{$modname}{filename} = $filename; if (!begins_with($path, "/")) { #- with newer module-init-tools, modules.dep can contain #- relative paths $path = dirname($file).'/'.$path; } $moddeps{$modname}{path} = $path; } } sub dependencies_closure { my @l = map { dependencies_closure($_) } @{exists $moddeps{$_[0]} && $moddeps{$_[0]}{deps} || []}; (@l, $_[0]); } sub filename2modname { my ($modname) = @_; $modname =~ s/-/_/g; $modname; } sub load_default_moddeps() { require c; load_dependencies('/lib/modules/' . c::kernel_version() . '/modules.dep'); } sub modname2filename { load_default_moddeps() if !%moddeps; $moddeps{$_[0]}{filename}; } sub modname2path { load_default_moddeps() if !%moddeps; $moddeps{$_[0]}{path}; } sub category2modules { map { my ($t1, $t2s) = m|(.*)/(.*)|; my @sub = $t2s eq '*' ? keys %{$l{$t1}} : split('\|', $t2s); map { my $l = $l{$t1}{$_} or die "bad category $t1/$_\n" . backtrace(); map { filename2modname($_) } @$l; } @sub; } split(' ', $_[0]); } sub all_modules() { map { @$_ } map { values %$_ } values %l; } sub module2category { my ($module) = @_; $module = filename2modname($module); foreach my $t1 (keys %l) { my $h = $l{$t1}; foreach my $t2 (keys %$h) { $module eq filename2modname($_) and return "$t1/$t2" foreach @{$h->{$t2}}; } } return; } sub ethernet_categories() { 'network/main|gigabit|pcmcia|tokenring|usb|wireless|firewire'; } sub sub_categories { my ($t1) = @_; keys %{$l{$t1}}; } 1;