From f20d3a201d826f3032eafeaa5dbf2a0dd1c88487 Mon Sep 17 00:00:00 2001 From: Martin Whitaker Date: Fri, 12 Jan 2018 08:51:39 +0000 Subject: Update for reworked draklive. No longer need to run as root. auto_inst.cfg.pl is automatically generated from information in build.cfg. --- build_one.sh | 4 +- config/auto_inst.cfg.pl | 273 ----------------------------------------- config/build.cfg | 314 +++++++++++++++++++++++++++++++++++++----------- 3 files changed, 245 insertions(+), 346 deletions(-) delete mode 100644 config/auto_inst.cfg.pl diff --git a/build_one.sh b/build_one.sh index 0e81d3e..ccfda8e 100755 --- a/build_one.sh +++ b/build_one.sh @@ -3,7 +3,7 @@ ./update_bootloader_files.sh draklive='perl -I ../drakiso/lib ../drakiso/draklive' if [ $# -gt 0 ] ; then - sudo $draklive $* + $draklive $* else - sudo $draklive --clean --all + $draklive --clean --all fi diff --git a/config/auto_inst.cfg.pl b/config/auto_inst.cfg.pl deleted file mode 100644 index 196046c..0000000 --- a/config/auto_inst.cfg.pl +++ /dev/null @@ -1,273 +0,0 @@ -#!/usr/bin/perl -cw -# -# You should check the syntax of this file before using it in an auto-install. -# You can do this with 'perl -cw auto_inst.cfg.pl' or by executing this file -# (note the '#!/usr/bin/perl -cw' on the first line). - -my $distro_theme = 'Default'; -my $distro_release = 'Default'; -my $distro_config = lc($distro_release); - -my @desktops = split(/\|/, $ENV{DRAKLIVE_DESKTOP}); -my $has_plasma = member('Plasma', @desktops); -my $has_gnome = member('GNOME', @desktops); -my $has_xfce = member('Xfce', @desktops); -my $has_lxde = member('LXDE', @desktops); -my $has_enlightenment = member('Enlightenment', @desktops); - -$o = { - 'media' => [ - { - type => 'media_cfg', - url => 'drakx://media', - selected_names => join(',', - 'Core Release', - 'Core Updates', - 'Nonfree Release', - 'Nonfree Updates', - ), - }, - if_($ENV{DRAKLIVE_ADDITIONAL_REPOSITORY}, - { type => 'media', url => $ENV{DRAKLIVE_ADDITIONAL_REPOSITORY} }, - ), - ], - # temporary (?) fix for mga#12299 - 'enabled_media' => [ - 'Core Release', - 'Core Updates', - 'Nonfree Release', - 'Nonfree Updates', - ], - 'rpmsrate_flags_chosen' => { - LIVE => 1, - (map { ("CAT_$_" => 1) } ( - # office - qw(OFFICE SPELLCHECK PIM ARCHIVING PRINTER), - # multimedia - qw(AUDIO VIDEO GRAPHICS), - # internet - qw(NETWORKING_WWW NETWORKING_MAIL NETWORKING_NEWS COMMUNICATIONS NETWORKING_CHAT), - qw(NETWORKING_FILE_TRANSFER NETWORKING_IRC NETWORKING_INSTANT_MESSAGING NETWORKING_DNS), - # network - qw(NETWORKING_REMOTE_ACCESS NETWORKING_FILE), - qw(NETWORKING_REMOTE_ACCESS_SERVER), - # config - qw(CONFIG), - # console - qw(EDITORS TERMINALS TEXT_TOOLS SHELLS FILE_TOOLS), - # system - qw(SYSTEM MINIMAL_DOCS X ACCESSIBILITY THEMES), - if_($has_plasma, qw(PLASMA5)), - if_($has_gnome, qw(GNOME)), - if_($has_xfce, qw(XFCE)), - if_($has_lxde, qw(LXDE)), - if_($has_enlightenment, qw(E17)), - )), - }, - # so that rpmsrate flags are really used - 'compssListLevel' => 5, # default from install_steps_interactive - 'skipped_packages' => [ - - # i586 arch specific - if_($ENV{DRAKLIVE_ARCH} eq 'i586', - '/^kernel-desktop-/', '/^vboxadditions-kernel-.*-desktop-/', - '/^libatlas3-/', - ), - - # x86_64 arch specific - if_($ENV{DRAKLIVE_ARCH} eq 'x86_64', - '/^lib64atlas3-/', - ), - - # no server kernels - '/^kernel-server-/', '/^vboxadditions-kernel-.*-server-/', - - # no legacy bootloaders, we default to grub2 - 'grub', 'lilo', - - # no efi stuff - only needed for install, and shipped in live core repo - 'grub2-efi', 'efibootmgr', 'efivar', - - # no devel packages on live media - 'glibc-devel', 'gdb', 'gcc', 'gcc3.3', 'dkms', - 'empathy', 'gnome-builder', # pulls devel stuff - - # shipped in live nonfree repo - 'dkms-broadcom-wl', 'broadcom-wl-common', - 'broadcom-bcma-config', 'broadcom-ssb-config', - '/^x11-driver-video-fglrx/', - '/^x11-driver-video-nvidia/', - - # huge deps - 'denemo', # pulls in lilypond and texlive - 'virtuoso-opensource', # not needed on live media - 'mono', # bloat - - # old stuff - 'aspell', 'aspell-en', - 'asihpi-firmware', 'hdsploader', 'mixartloader', 'pcxhrloader', 'usx2yloader', 'vxloader', - 'drakfax', 'efax', 'rxvt', - 'nspluginwrapper','nspluginwrapper-i386', # not needed anymore (mga #2001) - - # broken stuff - 'audacity', 'xguest', 'apper', - - # not wanted - 'al-anvar', # (mga #9752) - 'openssh-server', - 'manatools-gui', - - #- no distribution license - 'flash-player-plugin', - - # Gnome specific stuff - if_($has_gnome, - 'beagle', 'inkscape', - 'bluedevil', #- bluez-pin provide - 'pinentry-qt4', #- qt4 app - '/noatun/', #- prefer amarok - 'polkit-kde-agent-1', - ), - - # Plasma specific stuff - if_($has_plasma, - ), - ], - - 'default_packages' => [ - if_($has_lxde, "mageia-lxde-config-$distro_release"), - - # i586 arch specific - if_($ENV{DRAKLIVE_ARCH} eq 'i586', - 'vboxadditions-kernel-desktop586-latest', - ), - - # x86_64 arch specific - if_($ENV{DRAKLIVE_ARCH} eq 'x86_64', - 'vboxadditions-kernel-desktop-latest', - ), - - # try to protect base packages from rpmlib/urpmi cascade bug - 'basesystem', 'x11-server-common','x11-driver-video', 'x11-driver-input', - 'x11-driver-video-vboxvideo', - - # utils wanted - 'mc', 'btrfs-progs', 'shorewall-ipv6', 'hdparm', 'parted', 'glxinfo', 'patch', - 'bind-utils', 'mdadm', 'dmraid', 'usbutils', # we want lsusb - 'shared-mime-info', # needed for .desktop files to work atleast in gnome - 'vim-enhanced', # full ediitor - 'dnf', 'dnf-plugins-core', # some users want dnf - 'manatools', # just the ncurses version - 'simple-scan', # s-c-p wants this if it detects a combined printer/scanner - 'Xdialog', # provides nicer UI for lxcontrol - - 'bluez-firmware', # missed firmware - - # mageia specific - 'mageiawelcome', # nice helper app - 'mageia-doc-mcc-en', # some nice docs - 'grub2-mageia-theme', - - # Gnome specific stuff - if_($has_gnome, - 'task-gnome', 'gdm', # sometimes gets nuked during build - 'gnome-shell', 'caribou', 'caribou-gtk3', 'brasero', 'gparted', 'gnome-classic-session', 'hexchat', - 'adwaita-gtk2-theme', - ), - - # Plasma specific stuff - if_($has_plasma, - 'task-plasma5', 'sddm', # sometimes gets nuked during build - ), - - # Xfce specific stuff - if_($has_xfce, - 'task-xfce4', - 'gparted', # provides some options not currently supported in diskdrake - ), - ], - - 'preferred_packages' => join(',', $has_plasma ? 'sddm' : 'gdm'), - 'meta_class' => 'desktop', - 'desktop' => first(@desktops), - if_($ENV{DRAKLIVE_DEFAULT_USER}, 'autologin' => $ENV{DRAKLIVE_DEFAULT_USER}), - # explicitely specify the security level, so that environment of the build machine doesn't take precedence - 'security' => 1, - 'useSupermount' => 'magicdev', - 'users' => [ - if_($ENV{DRAKLIVE_DEFAULT_USER}, { - 'icon' => 'default', - 'realname' => '', - 'uid' => '', - 'groups' => [], - 'name' => $ENV{DRAKLIVE_DEFAULT_USER}, - 'shell' => '/bin/bash', - 'gid' => '' - }), - ], - 'locale' => { - 'country' => 'US', - 'IM' => undef, - 'lang' => 'en_US', - 'langs' => +{ - $ENV{DRAKLIVE_REGION} eq 'all' ? (all => 1) : (map { $_ => 1 } split(':', $ENV{DRAKLIVE_LANGS})) - }, - 'utf8' => 1 - }, - 'authentication' => { - 'shadow' => 1, - 'local' => 1, - 'blowfish' => 1 - }, - 'superuser' => { - 'pw' => '', - 'realname' => 'root', - 'uid' => '0', - 'shell' => '/bin/bash', - 'home' => '/root', - 'gid' => '0' - }, - 'keyboard' => { - 'GRP_TOGGLE' => '', - 'KBCHARSET' => 'C', - 'KEYBOARD' => 'us', - 'KEYTABLE' => 'us' - }, - 'timezone' => { - 'ntp' => undef, - 'timezone' => 'America/New_York', - 'UTC' => 1 - }, - 'X' => { disabled => 1 }, #- disable auto-configuration that may install unwanted packages - 'match_all_hardware' => 1, - 'excludedocs' => 0, - 'postInstallNonRooted' => join(";", - # drakx-in-chroot roots the mount point one level higher when - # the build system arch matches DRAKLIVE_ARCH. - "if [ -d /tmp/media/$ENV{DRAKLIVE_ARCH} ]", - "then cp /tmp/media/$ENV{DRAKLIVE_ARCH}/release-notes.* /mnt", - "else cp /tmp/media/release-notes.* /mnt", - "fi", - "chmod 0644 /mnt/release-notes.*", - ), - 'postInstall' => join(";", - # systemd boots by default to multiuser.target (old init 3), so change to graphical (old init 5) - "ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target", - - # have inittab match systemd defaulting to init 5 - "perl -pi -e 's/^id:3:initdefault:/id:5:initdefault:/' '/etc/inittab'", - - #- FIXME: in any::set_autologin, unlink if gdm/sddm conf file and binary exist - if_($has_xfce || $has_lxde, "rm -f /etc/sysconfig/autologin"), - ), - 'autoExitInstall' => 1, - 'keep_unrequested_dependencies' => 0, -}; - -my $old = \&install::pkgs::empty_packages; -undef *install::pkgs::empty_packages; -*install::pkgs::empty_packages = sub { - my $packages = &$old; - $packages->{debug_URPM} = sub { log::l("XXX: $_[0]") }; - $packages; -}; diff --git a/config/build.cfg b/config/build.cfg index f5ddd06..a6d5ca4 100644 --- a/config/build.cfg +++ b/config/build.cfg @@ -2,32 +2,236 @@ use MDK::Common; -my $use_modules = to_bool($build->{settings}{pack}); -my @user_config_dirs = ('/etc/skel', if_($build->{settings}{default_user}, '/home/' . $build->{settings}{default_user})); +my $distro = $build->{settings}{distro}; +my $version = $build->{settings}{version}; +my $product = $build->{settings}{product}; +my $arch = $build->{settings}{arch}; +my $default_user = $build->{settings}{default_user}; + +my @desktops = split(/\|/, $build->{settings}{desktop}); +my $has_gnome = member('GNOME', @desktops); +my $has_lxde = member('LXDE', @desktops); +my $has_plasma = member('Plasma', @desktops); +my $has_xfce = member('Xfce', @desktops); + +my $distro_theme = 'Default'; +my $distro_release = 'Default'; +my $distro_config = lc($distro_release); + +my $use_modules = to_bool($build->{settings}{pack}); +my @user_config_dirs = ('/etc/skel', if_($default_user, '/home/' . $default_user)); sub build_label { my ($build) = @_; - join('-', 'Mageia', $build->{settings}{version}, $build->{settings}{product}, $build->{settings}{desktop}, $build->{settings}{arch}); + join('-', $distro, $version, $product, $desktops[0], $arch); } sub build_title { my ($build) = @_; - join(' ', 'Mageia', $build->{settings}{version}, $build->{settings}{product}, $build->{settings}{desktop}); + join(' ', $distro, $version, $product, $desktops[0]); } my $default_append = 'root=mgalive:LABEL=' . build_label($build) . ' splash quiet noiswmd audit=0 rd.luks=0 rd.lvm=0 rd.md=0 rd.dm=0'; my $_l = { system => { - auto_install => 'config/auto_inst.cfg.pl', - install_env => { - }, - if_($build->{settings}{default_user}, preselect_kdm_user => $build->{settings}{default_user}), + enabled_media => [ + 'Core Release', + 'Core Updates', + 'Nonfree Release', + 'Nonfree Updates', + ], + + rpmsrate_flags => [ + 'LIVE', + (map { "CAT_$_" } ( + # office + qw(OFFICE SPELLCHECK PIM ARCHIVING PRINTER), + # multimedia + qw(AUDIO VIDEO GRAPHICS), + # internet + qw(NETWORKING_WWW NETWORKING_MAIL NETWORKING_NEWS COMMUNICATIONS NETWORKING_CHAT), + qw(NETWORKING_FILE_TRANSFER NETWORKING_IRC NETWORKING_INSTANT_MESSAGING NETWORKING_DNS), + # network + qw(NETWORKING_REMOTE_ACCESS NETWORKING_FILE), + qw(NETWORKING_REMOTE_ACCESS_SERVER), + # config + qw(CONFIG), + # console + qw(EDITORS TERMINALS TEXT_TOOLS SHELLS FILE_TOOLS), + # system + qw(SYSTEM MINIMAL_DOCS X ACCESSIBILITY THEMES), + if_($has_gnome, qw(GNOME)), + if_($has_lxde, qw(LXDE)), + if_($has_plasma, qw(PLASMA5)), + if_($has_xfce, qw(XFCE)), + )) + ], + compssListLevel => 5, + + include_packages => [ + if_($has_lxde, "mageia-lxde-config-$distro_release"), + + # i586 arch specific + if_($arch eq 'i586', + 'vboxadditions-kernel-desktop586-latest', + ), + + # x86_64 arch specific + if_($arch eq 'x86_64', + 'vboxadditions-kernel-desktop-latest', + ), + + # try to protect base packages from rpmlib/urpmi cascade bug + 'basesystem', 'x11-server-common','x11-driver-video', 'x11-driver-input', + 'x11-driver-video-vboxvideo', + + # utils wanted + 'mc', 'btrfs-progs', 'shorewall-ipv6', 'hdparm', 'parted', 'glxinfo', 'patch', + 'bind-utils', 'mdadm', 'dmraid', 'usbutils', # we want lsusb + 'shared-mime-info', # needed for .desktop files to work atleast in gnome + 'vim-enhanced', # full ediitor + 'dnf', 'dnf-plugins-core', # some users want dnf + 'manatools', # just the ncurses version + 'simple-scan', # s-c-p wants this if it detects a combined printer/scanner + 'Xdialog', # provides nicer UI for lxcontrol + + 'bluez-firmware', # missed firmware + + # mageia specific + 'mageiawelcome', # nice helper app + 'mageia-doc-mcc-en', # some nice docs + 'grub2-mageia-theme', + + # Gnome specific stuff + if_($has_gnome, + 'task-gnome', 'gdm', # sometimes gets nuked during build + 'gnome-shell', 'caribou', 'caribou-gtk3', 'brasero', 'gparted', 'gnome-classic-session', 'hexchat', + 'adwaita-gtk2-theme', + ), + + # Plasma specific stuff + if_($has_plasma, + 'task-plasma5', 'sddm', # sometimes gets nuked during build + ), + + # Xfce specific stuff + if_($has_xfce, + 'task-xfce4', + 'gparted', # provides some options not currently supported in diskdrake + ), + ], + exclude_packages => [ + # i586 arch specific + if_($arch eq 'i586', + '/^kernel-desktop-/', '/^vboxadditions-kernel-.*-desktop-/', + '/^libatlas3-/', + ), + + # x86_64 arch specific + if_($arch eq 'x86_64', + '/^lib64atlas3-/', + ), + + # no server kernels + '/^kernel-server-/', '/^vboxadditions-kernel-.*-server-/', + + # no legacy bootloaders, we default to grub2 + 'grub', 'lilo', + + # no efi stuff - only needed for install, and shipped in live core repo + 'grub2-efi', 'efibootmgr', 'efivar', + + # no devel packages on live media + 'glibc-devel', 'gdb', 'gcc', 'gcc3.3', 'dkms', + 'empathy', 'gnome-builder', # pulls devel stuff + + # shipped in live nonfree repo + 'dkms-broadcom-wl', 'broadcom-wl-common', + 'broadcom-bcma-config', 'broadcom-ssb-config', + '/^x11-driver-video-fglrx/', + '/^x11-driver-video-nvidia/', + + # huge deps + 'denemo', # pulls in lilypond and texlive + 'virtuoso-opensource', # not needed on live media + 'mono', # bloat + + # old stuff + 'aspell', 'aspell-en', + 'asihpi-firmware', 'hdsploader', 'mixartloader', 'pcxhrloader', 'usx2yloader', 'vxloader', + 'drakfax', 'efax', 'rxvt', + 'nspluginwrapper','nspluginwrapper-i386', # not needed anymore (mga #2001) + + # broken stuff + 'audacity', 'xguest', 'apper', + + # not wanted + 'al-anvar', # (mga #9752) + 'openssh-server', + 'manatools-gui', + + #- no distribution license + 'flash-player-plugin', + + # Gnome specific stuff + if_($has_gnome, + 'beagle', 'inkscape', + 'bluedevil', #- bluez-pin provide + 'pinentry-qt4', #- qt4 app + '/noatun/', #- prefer amarok + 'polkit-kde-agent-1', + ), + ], + preferred_packages => [ + if_($has_plasma, 'sddm'), + 'gdm', + ], + + post_install_nr => join(";", + "cp /tmp/media/$arch/release-notes.* /mnt", + "chmod 0644 /mnt/release-notes.*", + ), + post_install => join(";", + # systemd boots by default to multiuser.target (old init 3), so change to graphical (old init 5) + "ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target", + + # have inittab match systemd defaulting to init 5 + "perl -pi -e 's/^id:3:initdefault:/id:5:initdefault:/' /etc/inittab", + + #- FIXME: in any::set_autologin, unlink if gdm/sddm conf file and binary exist + if_($has_xfce || $has_lxde, "rm -f /etc/sysconfig/autologin"), + ), + langs_always => [ 'en_US' ], + +# additional_media => [ +# { +# name => '', +# path => '', +# packages => [ +# ], +# }, +# ), +# ], +# rpms => [ +# ], +# erase_rpms => [ +# ], + disable_services => [ + # uncommon hardware + qw(bpalogin capi4linux cpqarrayd mdadm oki4daemon pcscd), + # unneeded software + qw(chronyd ntpd snmpd), + # slows down basic usage and install, reenabled after install + qw(crond msec), + ], + disable_timers => [ + ], files => [ - if_($build->{settings}{desktop} eq 'GNOME', + if_($has_gnome, # add draklive-install icon to favourites in live mode and disable screen locking # (override files are processed in alphabetical order - make sure this one comes last) [ 'files/live.gschema.override', '/usr/share/glib-2.0/schemas/live.gschema.override', { mode => 0644, no_install => 1 } ], @@ -46,10 +250,10 @@ my $_l = { [ 'files/live.modprobe.conf', '/etc/modprobe.conf', { mode => 0644 } ], # add local repos - if_($build->{settings}{arch} eq 'i586', + if_($arch eq 'i586', [ 'files/mga_rpms/i586/mga_rpms', '/var/local' ], ), - if_($build->{settings}{arch} eq 'x86_64', + if_($arch eq 'x86_64', [ 'files/mga_rpms/x86_64/mga_rpms', '/var/local' ], ), @@ -82,11 +286,11 @@ my $_l = { [ 'files/draklive-install.d/run.d/home-live-permissions.sh', '/etc/draklive-install.d/run.d/home-live-permissions.sh', { mode => 755 } ], # fix for /var/lib/gdm sometimes ending up as root:root - if_($build->{settings}{desktop} eq 'GNOME', + if_($has_gnome, [ 'files/draklive-install.d/run.d/gdm-permissions.sh', '/etc/draklive-install.d/run.d/gdm-permissions.sh', { mode => 755 } ] ), - if_($build->{settings}{desktop} eq 'Plasma', + if_($has_plasma, [ 'files/draklive-install.d/run.d/generate-gtk-icon-cache.sh', '/etc/draklive-install.d/run.d/generate-gtk-icon-cache.sh', { mode => 755 } ], [ 'files/draklive-install.d/remove.d/clear-sddm-state', '/etc/draklive-install.d/remove.d/clear-sddm-state', { mode => 0644 } ], ), @@ -111,46 +315,22 @@ my $_l = { "/var/lib/dbus/machine-id", "/etc/ssh/ssh_host_*", ], - module_options => { - loop => "max_loop=64", - }, - exclude_modules => [ - ], - additional_modules => [ - ], - stage2_updates => [ - ], patches => [ ], - erase_rpms => [ - ], - rpms => [ - ], - disable_services => [ - # uncommon hardware - qw(bpalogin capi4linux cpqarrayd mdadm oki4daemon pcscd), - # unneeded software - qw(chronyd ntpd snmpd), - # slows down basic usage and install, reenabled after install - qw(crond msec), - ], - disable_timers => [ - ], - vga_mode => 788, final_fixes => join(';', - if_($build->{settings}{default_user}, "echo $build->{settings}{default_user} > /etc/draklive-install.d/user"), - "perl -pi -e 's,,$build->{settings}{default_user},' /etc/draklive-install.d/sysconfig/finish-install", - - if_($build->{settings}{desktop} eq 'Xfce' && $build->{settings}{default_user}, + if_($default_user, + "echo $default_user > /etc/draklive-install.d/user", + "perl -pi -e 's,,$default_user,' /etc/draklive-install.d/sysconfig/finish-install", + ), + if_($has_xfce && $default_user, # add a desktop icon to run draklive-install - "mkdir -p /home/$build->{settings}{default_user}/Desktop", - "cp /usr/share/applications/mageia-draklive-install.desktop /home/$build->{settings}{default_user}/Desktop/draklive-install.desktop", + "mkdir -p /home/$default_user/Desktop", + "cp /usr/share/applications/mageia-draklive-install.desktop /home/$default_user/Desktop/draklive-install.desktop", ), #- fix user perms for copied files - if_($build->{settings}{default_user}, "chown -R " . - "$build->{settings}{default_user}.$build->{settings}{default_user}" . - " /home/$build->{settings}{default_user}" + if_($default_user, + "chown -R $default_user.$default_user /home/$default_user" ), # remove readahead @@ -160,13 +340,7 @@ my $_l = { #- which can be huge '> /var/log/lastlog', - if_($build->{settings}{desktop} eq 'Plasma', - "rm -f /usr/share/icons/*/icon-theme.cache", - "cp -a /etc/akonadi/mysql-global.conf /etc/akonadi/mysql-global-standard.conf", - "cp /etc/akonadi/mysql-global-mobile.conf /etc/akonadi/mysql-global.conf", - "ak=/etc/draklive-install.d/run.d/restore-akonadi-config.sh; echo -e '#!/bin/sh\ncp /etc/akonadi/mysql-global-standard.conf /etc/akonadi/mysql-global.conf' > \$ak; chmod +x \$ak", - ), - if_($build->{settings}{desktop} eq 'GNOME', + if_($has_gnome, # modify and compile schema to get draklive-install and Firefox in menu "sed -i 's/epiphany.desktop/firefox.desktop/' /usr/share/glib-2.0/schemas/glib2-branding.gschema.override", "glib-compile-schemas /usr/share/glib-2.0/schemas/", @@ -175,17 +349,23 @@ my $_l = { "chown -R gdm:gdm /var/lib/gdm", # switch to NetworkManager - "systemctl disable network", - "systemctl disable network-up", - "systemctl enable NetworkManager.service", - "systemctl enable NetworkManager-wait-online.service", + "systemctl -q disable network", + "systemctl -q disable network-up", + "systemctl -q enable NetworkManager.service", + "systemctl -q enable NetworkManager-wait-online.service", "sed -i 's/NETWORK=yes/NETWORK=no/' /etc/draklive-install.d/sysconfig/finish-install", "echo 'AUTOSTART=FALSE' > /home/live/.net_applet", ), + if_($has_plasma, + "rm -f /usr/share/icons/*/icon-theme.cache", + "cp -a /etc/akonadi/mysql-global.conf /etc/akonadi/mysql-global-standard.conf", + "cp /etc/akonadi/mysql-global-mobile.conf /etc/akonadi/mysql-global.conf", + "ak=/etc/draklive-install.d/run.d/restore-akonadi-config.sh; echo -e '#!/bin/sh\ncp /etc/akonadi/mysql-global-standard.conf /etc/akonadi/mysql-global.conf' > \$ak; chmod +x \$ak", + ), # add local medias - "urpmi.addmedia 'Live Core' /var/local/mga_rpms/core with media_info/hdlist.cz", - "urpmi.addmedia 'Live Nonfree' /var/local/mga_rpms/nonfree with media_info/hdlist.cz", + "urpmi.addmedia -q 'Live Core' /var/local/mga_rpms/core with media_info/hdlist.cz", + "urpmi.addmedia -q 'Live Nonfree' /var/local/mga_rpms/nonfree with media_info/hdlist.cz", # disable HPLIP systray startup "echo 'Hidden=true' >> /etc/xdg/autostart/hplip-systray.desktop", @@ -212,16 +392,8 @@ my $_l = { # try to avoid plymouth falling back to text mode (mga#19984) "sed -i -r 's/DeviceTimeout=[0-9]+/DeviceTimeout=10/' /usr/share/plymouth/plymouthd.defaults", ), - additional_media => [ - if_($build->{settings}{updates_repository}, - { - name => 'core_updates_testing', - path => $build->{settings}{updates_repository} . '/' . $build->{settings}{arch} . '/media/core/updates_testing', - packages => [ - ], - }, - ), - ], + + vga_mode => 788, }, loopbacks => { exclude => { @@ -263,8 +435,8 @@ my $_l = { bootloader_entries => [ 'Boot Mageia Live' => { append => $default_append . ' xdriver=free' }, ' + use non-free video drivers (slower to boot)' => { append => $default_append . ' nokmsboot' }, - 'Install Mageia Live' => { append => $default_append . ' xdriver=free' }, - ' + use non-free video drivers (slower to boot)' => { append => $default_append . ' nokmsboot' }, + 'Install Mageia Live' => { append => $default_append . ' xdriver=free install' }, + ' + use non-free video drivers (slower to boot)' => { append => $default_append . ' nokmsboot install' }, 'Memory Test' => { command => 'linux16', image => '/boot/memtest', initrd => '' }, ], mbr_boot_img => 'bootloader/images/boot_hybrid.img', -- cgit v1.2.1