summaryrefslogtreecommitdiffstats
path: root/perl-install/standalone/XFdrake
diff options
context:
space:
mode:
authorMystery Man <unknown@mandriva.org>2004-06-15 16:50:22 +0000
committerMystery Man <unknown@mandriva.org>2004-06-15 16:50:22 +0000
commit8ea9beca90c410e12593fedfb6e741dbdf8795d0 (patch)
tree544a377d0ea57462110009fbbbfd14473390e2a1 /perl-install/standalone/XFdrake
parentb5dc638815c772056e07cd013f5b1674900456d5 (diff)
downloaddrakx-backup-do-not-use-8ea9beca90c410e12593fedfb6e741dbdf8795d0.tar
drakx-backup-do-not-use-8ea9beca90c410e12593fedfb6e741dbdf8795d0.tar.gz
drakx-backup-do-not-use-8ea9beca90c410e12593fedfb6e741dbdf8795d0.tar.bz2
drakx-backup-do-not-use-8ea9beca90c410e12593fedfb6e741dbdf8795d0.tar.xz
drakx-backup-do-not-use-8ea9beca90c410e12593fedfb6e741dbdf8795d0.zip
This commit was manufactured by cvs2svn to create branch 'mandrakesoft'.topic/mandrakesoft
Diffstat (limited to 'perl-install/standalone/XFdrake')
-rwxr-xr-xperl-install/standalone/XFdrake108
1 files changed, 0 insertions, 108 deletions
diff --git a/perl-install/standalone/XFdrake b/perl-install/standalone/XFdrake
deleted file mode 100755
index d0d977628..000000000
--- a/perl-install/standalone/XFdrake
+++ /dev/null
@@ -1,108 +0,0 @@
-#!/usr/bin/perl
-
-# XFdrake
-# Copyright (C) 1999-2004 MandrakeSoft (pixel@mandrakesoft.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.
-#
-# 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 lib qw(/usr/lib/libDrakX);
-
-use standalone; #- warning, standalone must be loaded very first, for 'explanations'
-
-use Xconfig::main;
-use Xconfig::xfree;
-use Xconfig::default;
-use interactive;
-use modules;
-use common;
-use any;
-use c;
-
-local $_ = join '', @ARGV;
-
-my ($configure_this) = grep { !/^-/ } @ARGV;
-$configure_this = 'resolution' if $0 =~ /Xdrakres/;
-$configure_this ||= 'everything';
-
-{
- my $in = 'interactive'->vnew('su');
-
- modules::mergein_conf('/etc/modules.conf') if -r '/etc/modules.conf';
-
- my $rc = do {
- my $options = { allowFB => listlength(cat_("/proc/fb")) };
-
- if ($configure_this eq 'everything') {
- check_XFree($in);
- Xconfig::main::configure_everything_or_configure_chooser($in, $options, $::auto);
- } elsif ($configure_this eq 'auto_install') {
- Xconfig::main::configure_everything_auto_install(Xconfig::default::configure(), $in->do_pkgs, {}, $options);
- } elsif ($configure_this eq 'monitor') {
- Xconfig::main::configure_monitor($in, Xconfig::xfree->read);
- } elsif ($configure_this eq 'resolution') {
- Xconfig::main::configure_resolution($in, Xconfig::xfree->read);
- }
- };
- ask_for_X_restart($in) if $rc;
-
- $in->exit(0);
-}
-
-sub check_XFree {
- my ($in) = @_;
-
- #- set the standard configuration
- foreach ('XF86Config', 'XF86Config-4') {
- my $f = "/etc/X11/$_";
- symlinkf("$_.standard", $f) if -l $f && -e "$f.standard";
- }
-
- my $f = "/usr/X11R6/lib/X11/rgb.txt"; #- this one is on all platform
- -e $f or $in->do_pkgs->install('xorg-x11', 'xorg-x11-75dpi-fonts');
- -e $f or die "install XFree86 first!\n";
-
- system("mount /proc 2>/dev/null"); # ensure /proc is mounted for pci probing
-}
-
-sub ask_for_X_restart {
- my ($in) = @_;
-
- $::isStandalone && $in->isa('interactive::gtk') or return;
-
- my ($wm, $pid) = any::running_window_manager();
-
- if (!$wm) {
- $in->ask_warn('', N("Please log out and then use Ctrl-Alt-BackSpace"));
- return;
- }
-
- $in->ask_okcancel('', N("You need to log out and back in again for changes to take effect"), 1) or return;
-
- if (fork()) {
- any::ask_window_manager_to_logout($wm);
- return;
- }
-
- open STDIN, "</dev/zero";
- open STDOUT, ">/dev/null";
- open STDERR, ">&STDERR";
- c::setsid();
- exec 'perl', '-e', q(
- my ($wm, $pid) = @ARGV;
- my $nb;
- for ($nb = 30; $nb && -e "/proc/$pid"; $nb--) { sleep 1 }
- system("killall X") if $nb;
- ), $wm, $pid;
-}