diff options
author | bill-auger <mr.j.spam.me@gmail.com> | 2017-11-20 18:02:59 -0500 |
---|---|---|
committer | bill-auger <mr.j.spam.me@gmail.com> | 2017-12-01 21:55:39 -0500 |
commit | d662dcc89037786d4250cc59a322d33eee141e9c (patch) | |
tree | 840e9ed97a3ca92d5b9f45d0c9b7fb8ab5141678 | |
parent | 51c8f44735b6d0395e08841476b54e7c7c734825 (diff) |
stash
-rw-r--r-- | data/skel/.ICEauthority (renamed from data/skel/mate/.ICEauthority) | bin | 664 -> 664 bytes | |||
-rw-r--r-- | data/skel/.Xauthority (renamed from data/skel/mate/.Xauthority) | bin | 55 -> 55 bytes | |||
-rw-r--r-- | data/skel/.bash_logout (renamed from data/skel/mate/.bash_logout) | 0 | ||||
-rw-r--r-- | data/skel/.bash_profile (renamed from data/skel/mate/.bash_profile) | 0 | ||||
-rw-r--r-- | data/skel/.bashrc (renamed from data/skel/mate/.bashrc) | 0 | ||||
-rw-r--r-- | data/skel/.cache/mate/background/0_1_1024_768_6fb1a8398fc17d5268aa5ccdd628a9a1 (renamed from data/skel/mate/.cache/mate/background/0_1_1024_768_6fb1a8398fc17d5268aa5ccdd628a9a1) | bin | 1111438 -> 1111438 bytes | |||
-rw-r--r-- | data/skel/.config/caja/accels (renamed from data/skel/mate/.config/caja/accels) | 0 | ||||
-rw-r--r-- | data/skel/.config/caja/desktop-metadata (renamed from data/skel/mate/.config/caja/desktop-metadata) | 0 | ||||
-rw-r--r-- | data/skel/.config/dconf/user (renamed from data/skel/mate/.config/dconf/user) | bin | 6616 -> 6616 bytes | |||
-rw-r--r-- | data/skel/.config/gtk-2.0/gtkfilechooser.ini (renamed from data/skel/mate/.config/gtk-2.0/gtkfilechooser.ini) | 0 | ||||
-rw-r--r-- | data/skel/.config/lxpanel/LXDE/config | 2 | ||||
-rw-r--r-- | data/skel/.config/lxpanel/LXDE/panels/panel | 178 | ||||
-rw-r--r-- | data/skel/.config/lxsession/LXDE/autostart | 3 | ||||
-rw-r--r-- | data/skel/.config/lxsession/LXDE/desktop.conf | 48 | ||||
-rw-r--r-- | data/skel/.config/octopi/octopi.conf (renamed from data/skel/mate/.config/octopi/octopi.conf) | 0 | ||||
-rw-r--r-- | data/skel/.config/openbox/lxde-rc.xml | 763 | ||||
-rw-r--r-- | data/skel/.config/pcmanfm/LXDE/desktop-items-0.conf | 14 | ||||
-rw-r--r-- | data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-card-database.tdb (renamed from data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-card-database.tdb) | bin | 16384 -> 16384 bytes | |||
-rw-r--r-- | data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-default-sink (renamed from data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-default-sink) | 0 | ||||
-rw-r--r-- | data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-default-source (renamed from data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-default-source) | 0 | ||||
-rw-r--r-- | data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-device-volumes.tdb (renamed from data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-device-volumes.tdb) | bin | 12288 -> 12288 bytes | |||
-rw-r--r-- | data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-stream-volumes.tdb (renamed from data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-stream-volumes.tdb) | bin | 696 -> 696 bytes | |||
-rw-r--r-- | data/skel/.config/pulse/cookie (renamed from data/skel/mate/.config/pulse/cookie) | bin | 256 -> 256 bytes | |||
-rw-r--r-- | data/skel/.config/volumeicon/volumeicon (renamed from data/skel/mate/.config/volumeicon/volumeicon) | 0 | ||||
-rw-r--r-- | data/skel/.directory (renamed from data/skel/mate/.directory) | 0 | ||||
-rw-r--r-- | data/skel/.dmrc (renamed from data/skel/mate/.dmrc) | 0 | ||||
-rw-r--r-- | data/skel/.esd_auth (renamed from data/skel/mate/.esd_auth) | 0 | ||||
-rw-r--r-- | data/skel/.local/share/keyrings/login.keyring (renamed from data/skel/mate/.local/share/keyrings/login.keyring) | bin | 105 -> 105 bytes | |||
-rw-r--r-- | data/skel/.local/share/keyrings/user.keystore (renamed from data/skel/mate/.local/share/keyrings/user.keystore) | bin | 207 -> 207 bytes | |||
-rw-r--r-- | data/skel/.local/share/recently-used.xbel (renamed from data/skel/mate/.local/share/recently-used.xbel) | 0 | ||||
-rw-r--r-- | data/skel/.xsession-errors (renamed from data/skel/mate/.xsession-errors) | 0 | ||||
-rw-r--r-- | data/skel/.zshrc (renamed from data/skel/mate/.zshrc) | 0 | ||||
-rw-r--r-- | data/skel/CALAMARES-SKEL (renamed from data/skel/mate/CALAMARES-SKEL) | 0 | ||||
-rwxr-xr-x[-rw-r--r--] | mk | 0 | ||||
-rw-r--r-- | src/libcalamares/CMakeLists.txt | 8 | ||||
-rw-r--r-- | src/libcalamares/GlobalStorage.cpp | 5 | ||||
-rw-r--r-- | src/libcalamares/GlobalStorage.h | 5 | ||||
-rw-r--r-- | src/libcalamares/PacstrapCppJob.cpp | 64 | ||||
-rw-r--r-- | src/libcalamares/PacstrapCppJob.h | 48 | ||||
-rw-r--r-- | src/modules/locale/LocalePage.cpp | 5 | ||||
-rw-r--r-- | src/modules/localecfg/main.py | 2 | ||||
-rw-r--r-- | src/modules/pacstrap-base/CMakeLists.txt | 7 | ||||
-rw-r--r-- | src/modules/pacstrap-base/pacstrap-base.conf | 22 | ||||
-rw-r--r-- | src/modules/pacstrap-base/pacstrap-base.cpp | 5 | ||||
-rw-r--r-- | src/modules/pacstrap-gui/pacstrap-gui.conf | 30 | ||||
-rw-r--r-- | src/modules/pacstrap-gui/pacstrap-gui.cpp | 13 | ||||
-rw-r--r-- | src/modules/services/main.py | 14 | ||||
-rw-r--r-- | src/modules/services/services.conf | 16 | ||||
-rw-r--r-- | src/modules/users/CreateUserJob.cpp | 53 |
49 files changed, 1224 insertions, 81 deletions
diff --git a/data/skel/mate/.ICEauthority b/data/skel/.ICEauthority Binary files differindex b959e6a56..b959e6a56 100644 --- a/data/skel/mate/.ICEauthority +++ b/data/skel/.ICEauthority diff --git a/data/skel/mate/.Xauthority b/data/skel/.Xauthority Binary files differindex 132220db6..132220db6 100644 --- a/data/skel/mate/.Xauthority +++ b/data/skel/.Xauthority diff --git a/data/skel/mate/.bash_logout b/data/skel/.bash_logout index 0e4e4f184..0e4e4f184 100644 --- a/data/skel/mate/.bash_logout +++ b/data/skel/.bash_logout diff --git a/data/skel/mate/.bash_profile b/data/skel/.bash_profile index 5545f007e..5545f007e 100644 --- a/data/skel/mate/.bash_profile +++ b/data/skel/.bash_profile diff --git a/data/skel/mate/.bashrc b/data/skel/.bashrc index 89392d75b..89392d75b 100644 --- a/data/skel/mate/.bashrc +++ b/data/skel/.bashrc diff --git a/data/skel/mate/.cache/mate/background/0_1_1024_768_6fb1a8398fc17d5268aa5ccdd628a9a1 b/data/skel/.cache/mate/background/0_1_1024_768_6fb1a8398fc17d5268aa5ccdd628a9a1 Binary files differindex 5163123b8..5163123b8 100644 --- a/data/skel/mate/.cache/mate/background/0_1_1024_768_6fb1a8398fc17d5268aa5ccdd628a9a1 +++ b/data/skel/.cache/mate/background/0_1_1024_768_6fb1a8398fc17d5268aa5ccdd628a9a1 diff --git a/data/skel/mate/.config/caja/accels b/data/skel/.config/caja/accels index b3731d8ce..b3731d8ce 100644 --- a/data/skel/mate/.config/caja/accels +++ b/data/skel/.config/caja/accels diff --git a/data/skel/mate/.config/caja/desktop-metadata b/data/skel/.config/caja/desktop-metadata index d80c2893a..d80c2893a 100644 --- a/data/skel/mate/.config/caja/desktop-metadata +++ b/data/skel/.config/caja/desktop-metadata diff --git a/data/skel/mate/.config/dconf/user b/data/skel/.config/dconf/user Binary files differindex 113e640ff..113e640ff 100644 --- a/data/skel/mate/.config/dconf/user +++ b/data/skel/.config/dconf/user diff --git a/data/skel/mate/.config/gtk-2.0/gtkfilechooser.ini b/data/skel/.config/gtk-2.0/gtkfilechooser.ini index c6b458dfa..c6b458dfa 100644 --- a/data/skel/mate/.config/gtk-2.0/gtkfilechooser.ini +++ b/data/skel/.config/gtk-2.0/gtkfilechooser.ini diff --git a/data/skel/.config/lxpanel/LXDE/config b/data/skel/.config/lxpanel/LXDE/config new file mode 100644 index 000000000..76228e248 --- /dev/null +++ b/data/skel/.config/lxpanel/LXDE/config @@ -0,0 +1,2 @@ +[Command] +Logout=lxde-logout diff --git a/data/skel/.config/lxpanel/LXDE/panels/panel b/data/skel/.config/lxpanel/LXDE/panels/panel new file mode 100644 index 000000000..4a105d86f --- /dev/null +++ b/data/skel/.config/lxpanel/LXDE/panels/panel @@ -0,0 +1,178 @@ +# lxpanel <profile> config file. Manually editing is not recommended. +# Use preference dialog in lxpanel to adjust config when you can. + +Global { + edge=bottom + align=left + margin=0 + widthtype=percent + width=100 + height=26 + transparent=0 + tintcolor=#000000 + alpha=0 + setdocktype=1 + setpartialstrut=1 + autohide=0 + heightwhenhidden=0 + usefontcolor=1 + fontcolor=#000000 + background=0 + backgroundfile=/usr/share/lxpanel/images/background.png +} +Plugin { + type=space + Config { + Size=2 + } +} +Plugin { + type=menu + Config { + image=/root/.scriptsInstallation/parabolaicon.png + system { + } + separator { + } + item { + command=run + } + separator { + } + item { + image=gnome-logout + command=logout + } + } +} +Plugin { + type=space + Config { + Size=8 + } +} +Plugin { + type=separator + Config { + } +} +Plugin { + type=space + Config { + Size=8 + } +} +Plugin { + type=launchbar + Config { + Button { + id=iceweasel.desktop + } + Button { + id=pidgin.desktop + } + Button { + id=pcmanfm.desktop + } + Button { + id=lxterminal.desktop + } + } +} +Plugin { + type=space + Config { + Size=8 + } +} +Plugin { + type=separator + Config { + } +} +Plugin { + type=space + Config { + Size=8 + } +} +Plugin { + type=wincmd + Config { + Button1=iconify + Button2=shade + } +} +Plugin { + type=space + Config { + Size=8 + } +} +Plugin { + type=separator + Config { + } +} +Plugin { + type=space + Config { + Size=8 + } +} +Plugin { + type=taskbar + expand=1 + Config { + tooltips=1 + IconsOnly=0 + AcceptSkipPager=1 + ShowIconified=1 + ShowMapped=1 + ShowAllDesks=0 + UseMouseWheel=1 + UseUrgencyHint=1 + FlatButton=0 + MaxTaskWidth=150 + spacing=1 + } +} +Plugin { + type=cpu + Config { + } +} +Plugin { + type=volume + Config { + VolumeMuteKey=XF86AudioMute + VolumeDownKey=XF86AudioLowerVolume + VolumeUpKey=XF86AudioRaiseVolume + } +} +Plugin { + type=tray + Config { + } +} +Plugin { + type=dclock + Config { + ClockFmt=%R + TooltipFmt=%A %x + BoldFont=0 + IconOnly=0 + CenterText=0 + } +} +Plugin { + type=launchbar + Config { + Button { + id=lxde-screenlock.desktop + } + Button { + id=lxde-logout.desktop + } + } +} diff --git a/data/skel/.config/lxsession/LXDE/autostart b/data/skel/.config/lxsession/LXDE/autostart new file mode 100644 index 000000000..d8f2e230c --- /dev/null +++ b/data/skel/.config/lxsession/LXDE/autostart @@ -0,0 +1,3 @@ +@lxpanel --profile LXDE +@pcmanfm --desktop --profile LXDE +@xscreensaver -no-splash diff --git a/data/skel/.config/lxsession/LXDE/desktop.conf b/data/skel/.config/lxsession/LXDE/desktop.conf new file mode 100644 index 000000000..5f99ce298 --- /dev/null +++ b/data/skel/.config/lxsession/LXDE/desktop.conf @@ -0,0 +1,48 @@ +[Session] +window_manager=openbox-lxde +disable_autostart=no +polkit/command=lxpolkit +clipboard/command=lxclipboard +xsettings_manager/command=build-in +proxy_manager/command=build-in +keyring/command=ssh-agent +quit_manager/command=lxsession-logout +lock_manager/command=lxlock +terminal_manager/command=lxterminal + +[GTK] +sNet/ThemeName=Adwaita +sNet/IconThemeName=Adwaita +sGtk/FontName=Sans 10 +iGtk/ToolbarStyle=3 +iGtk/ButtonImages=1 +iGtk/MenuImages=1 +iGtk/CursorThemeSize=18 +iXft/Antialias=1 +iXft/Hinting=1 +sXft/HintStyle=hintslight +sXft/RGBA=rgb +iNet/EnableEventSounds=1 +iNet/EnableInputFeedbackSounds=1 +sGtk/ColorScheme= +iGtk/ToolbarIconSize=3 +sGtk/CursorThemeName=DMZ-White + +[Mouse] +AccFactor=20 +AccThreshold=10 +LeftHanded=0 + +[Keyboard] +Delay=500 +Interval=30 +Beep=1 + +[State] +guess_default=true + +[Dbus] +lxde=true + +[Environment] +menu_prefix=lxde- diff --git a/data/skel/mate/.config/octopi/octopi.conf b/data/skel/.config/octopi/octopi.conf index 58dfdac11..58dfdac11 100644 --- a/data/skel/mate/.config/octopi/octopi.conf +++ b/data/skel/.config/octopi/octopi.conf diff --git a/data/skel/.config/openbox/lxde-rc.xml b/data/skel/.config/openbox/lxde-rc.xml new file mode 100644 index 000000000..54eaa4142 --- /dev/null +++ b/data/skel/.config/openbox/lxde-rc.xml @@ -0,0 +1,763 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Do not edit this file, it will be overwritten on install. + Copy the file to $HOME/.config/openbox/ instead. --> +<openbox_config xmlns="http://openbox.org/3.4/rc"> + <resistance> + <strength>10</strength> + <screen_edge_strength>20</screen_edge_strength> + </resistance> + <focus> + <focusNew>yes</focusNew> + <!-- always try to focus new windows when they appear. other rules do + apply --> + <followMouse>no</followMouse> + <!-- move focus to a window when you move the mouse into it --> + <focusLast>yes</focusLast> + <!-- focus the last used window when changing desktops, instead of the one + under the mouse pointer. when followMouse is enabled --> + <underMouse>no</underMouse> + <!-- move focus under the mouse, even when the mouse is not moving --> + <focusDelay>200</focusDelay> + <!-- when followMouse is enabled, the mouse must be inside the window for + this many milliseconds (1000 = 1 sec) before moving focus to it --> + <raiseOnFocus>no</raiseOnFocus> + <!-- when followMouse is enabled, and a window is given focus by moving the + mouse into it, also raise the window --> + </focus> + <placement> + <policy>Smart</policy> + <!-- 'Smart' or 'UnderMouse' --> + <center>yes</center> + <!-- whether to place windows in the center of the free area found or + the top left corner --> + <monitor>Any</monitor> + <!-- with Smart placement on a multi-monitor system, try to place new windows + on: 'Any' - any monitor, 'Mouse' - where the mouse is, 'Active' - where + the active window is --> + <primaryMonitor></primaryMonitor> + </placement> + <theme> + <name>Bear2</name> + <titleLayout>NLIMC</titleLayout> + <!-- + available characters are NDSLIMC, each can occur at most once. + N: window icon + L: window label (AKA title). + I: iconify + M: maximize + C: close + S: shade (roll up/down) + D: omnipresent (on all desktops). + --> + <keepBorder>yes</keepBorder> + <animateIconify>yes</animateIconify> + <font place="ActiveWindow"> + <name>sans</name> + <size>10</size> + <!-- font size in points --> + <weight>bold</weight> + <!-- 'bold' or 'normal' --> + <slant>normal</slant> + <!-- 'italic' or 'normal' --> + </font> + <font place="InactiveWindow"> + <name>sans</name> + <size>10</size> + <!-- font size in points --> + <weight>bold</weight> + <!-- 'bold' or 'normal' --> + <slant>normal</slant> + <!-- 'italic' or 'normal' --> + </font> + <font place="MenuHeader"> + <name>sans</name> + <size>10</size> + <!-- font size in points --> + <weight>normal</weight> + <!-- 'bold' or 'normal' --> + <slant>normal</slant> + <!-- 'italic' or 'normal' --> + </font> + <font place="MenuItem"> + <name>sans</name> + <size>10</size> + <!-- font size in points --> + <weight>normal</weight> + <!-- 'bold' or 'normal' --> + <slant>normal</slant> + <!-- 'italic' or 'normal' --> + </font> + <font place="OnScreenDisplay"> + <name>sans</name> + <size>10</size> + <!-- font size in points --> + <weight>bold</weight> + <!-- 'bold' or 'normal' --> + <slant>normal</slant> + <!-- 'italic' or 'normal' --> + </font> + <font place="ActiveOnScreenDisplay"> + <name>Sans</name> + <size>8</size> + <weight/> + <slant/> + </font> + <font place="InactiveOnScreenDisplay"> + <name>Sans</name> + <size>8</size> + <weight/> + <slant/> + </font> + </theme> + <desktops> + <!-- this stuff is only used at startup, pagers allow you to change them + during a session + + these are default values to use when other ones are not already set + by other applications, or saved in your session + + use obconf if you want to change these without having to log out + and back in --> + <number>1</number> + <firstdesk>1</firstdesk> + <names> + <!-- set names up here if you want to, like this: + <name>desktop 1</name> + <name>desktop 2</name> + --> + </names> + <popupTime>875</popupTime> + <!-- The number of milliseconds to show the popup for when switching + desktops. Set this to 0 to disable the popup. --> + </desktops> + <resize> + <drawContents>yes</drawContents> + <popupShow>Nonpixel</popupShow> + <!-- 'Always', 'Never', or 'Nonpixel' (xterms and such) --> + <popupPosition>Center</popupPosition> + <!-- 'Center', 'Top', or 'Fixed' --> + <popupFixedPosition> + <!-- these are used if popupPosition is set to 'Fixed' --> + <x>10</x> + <!-- positive number for distance from left edge, negative number for + distance from right edge, or 'Center' --> + <y>10</y> + <!-- positive number for distance from top edge, negative number for + distance from bottom edge, or 'Center' --> + </popupFixedPosition> + </resize> + <!-- You can reserve a portion of your screen where windows will not cover when + they are maximized, or when they are initially placed. + Many programs reserve space automatically, but you can use this in other + cases. --> + <margins> + <top>0</top> + <bottom>0</bottom> + <left>0</left> + <right>0</right> + </margins> + <dock> + <position>TopLeft</position> + <!-- (Top|Bottom)(Left|Right|)|Top|Bottom|Left|Right|Floating --> + <floatingX>0</floatingX> + <floatingY>0</floatingY> + <noStrut>no</noStrut> + <stacking>Above</stacking> + <!-- 'Above', 'Normal', or 'Below' --> + <direction>Vertical</direction> + <!-- 'Vertical' or 'Horizontal' --> + <autoHide>no</autoHide> + <hideDelay>300</hideDelay> + <!-- in milliseconds (1000 = 1 second) --> + <showDelay>300</showDelay> + <!-- in milliseconds (1000 = 1 second) --> + <moveButton>Middle</moveButton> + <!-- 'Left', 'Middle', 'Right' --> + </dock> + <keyboard> + <chainQuitKey>C-g</chainQuitKey> + <!-- Keybindings for desktop switching --> + <keybind key="C-A-Left"> + <action name="DesktopLeft"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="C-A-Right"> + <action name="DesktopRight"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="C-A-Up"> + <action name="DesktopUp"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="C-A-Down"> + <action name="DesktopDown"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="S-A-Left"> + <action name="SendToDesktopLeft"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="S-A-Right"> + <action name="SendToDesktopRight"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="S-A-Up"> + <action name="SendToDesktopUp"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="S-A-Down"> + <action name="SendToDesktopDown"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="W-F1"> + <action name="Desktop"> + <desktop>1</desktop> + </action> + </keybind> + <keybind key="W-F2"> + <action name="Desktop"> + <desktop>2</desktop> + </action> + </keybind> + <keybind key="W-F3"> + <action name="Desktop"> + <desktop>3</desktop> + </action> + </keybind> + <keybind key="W-F4"> + <action name="Desktop"> + <desktop>4</desktop> + </action> + </keybind> + <keybind key="W-d"> + <action name="ToggleShowDesktop"/> + </keybind> + <keybind key="C-A-d"> + <action name="ToggleShowDesktop"/> + </keybind> + <!-- Keybindings for windows --> + <keybind key="A-F4"> + <action name="Close"/> + </keybind> + <keybind key="A-Escape"> + <action name="Lower"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + </keybind> + <keybind key="A-space"> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </keybind> + <!-- Keybindings for window switching --> + <keybind key="A-Tab"> + <action name="NextWindow"/> + </keybind> + <keybind key="A-S-Tab"> + <action name="PreviousWindow"/> + </keybind> + <keybind key="C-A-Tab"> + <action name="NextWindow"> + <panels>yes</panels> + <desktop>yes</desktop> + </action> + </keybind> + <!-- Keybindings for running applications --> + <keybind key="W-e"> + <action name="Execute"> + <startupnotify> + <enabled>true</enabled> + <name>PCManFM</name> + </startupnotify> + <command>pcmanfm</command> + </action> + </keybind> + <!-- Keybindings for finding files --> + <keybind key="W-f"> + <action name="Execute"> + <command>pcmanfm --find-files</command> + </action> + </keybind> + <!--keybindings for LXPanel --> + <keybind key="W-r"> + <action name="Execute"> + <command>lxpanelctl run</command> + </action> + </keybind> + <keybind key="A-F2"> + <action name="Execute"> + <command>lxpanelctl run</command> + </action> + </keybind> + <keybind key="C-Escape"> + <action name="Execute"> + <command>lxpanelctl menu</command> + </action> + </keybind> + <keybind key="A-F1"> + <action name="Execute"> + <command>lxpanelctl menu</command> + </action> + </keybind> + <keybind key="A-F11"> + <action name="ToggleFullscreen"/> + </keybind> + <!-- Launch Task Manager with Ctrl+Alt+Del --> + <keybind key="A-C-Delete"> + <action name="Execute"> + <command>lxtask</command> + </action> + </keybind> + <!-- Launch gnome-screenshot when PrintScreen is pressed --> + <keybind key="Print"> + <action name="Execute"> + <command>gnome-screenshot -i</command> + </action> + </keybind> + <!-- Launch LXRandR when Fn+Screen is pressed --> + <keybind key="XF86Display"> + <action name="Execute"> + <command>lxrandr</command> + </action> + </keybind> + </keyboard> + <mouse> + <dragThreshold>8</dragThreshold> + <!-- number of pixels the mouse must move before a drag begins --> + <doubleClickTime>200</doubleClickTime> + <!-- in milliseconds (1000 = 1 second) --> + <screenEdgeWarpTime>400</screenEdgeWarpTime> + <!-- Time before changing desktops when the pointer touches the edge of the + screen while moving a window, in milliseconds (1000 = 1 second). + Set this to 0 to disable warping --> + <context name="Frame"> + <mousebind button="A-Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="A-Left" action="Click"> + <action name="Unshade"/> + </mousebind> + <mousebind button="A-Left" action="Drag"> + <action name="Move"/> + </mousebind> + <mousebind button="A-Right" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="A-Right" action="Drag"> + <action name="Resize"/> + </mousebind> + <mousebind button="A-Middle" action="Press"> + <action name="Lower"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + </mousebind> + <mousebind button="A-Up" action="Click"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind button="A-Down" action="Click"> + <action name="DesktopNext"/> + </mousebind> + <mousebind button="C-A-Up" action="Click"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind button="C-A-Down" action="Click"> + <action name="DesktopNext"/> + </mousebind> + <mousebind button="A-S-Up" action="Click"> + <action name="SendToDesktopPrevious"/> + </mousebind> + <mousebind button="A-S-Down" action="Click"> + <action name="SendToDesktopNext"/> + </mousebind> + </context> + <context name="Titlebar"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Move"/> + </mousebind> + <mousebind button="Left" action="DoubleClick"> + <action name="ToggleMaximizeFull"/> + </mousebind> + <mousebind button="Middle" action="Press"> + <action name="Lower"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + </mousebind> + <mousebind button="Up" action="Click"> + <action name="Shade"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + <action name="Lower"/> + </mousebind> + <mousebind button="Down" action="Click"> + <action name="Unshade"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Right" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </mousebind> + </context> + <context name="Top"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"> + <edge>top</edge> + </action> + </mousebind> + </context> + <context name="Left"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"> + <edge>left</edge> + </action> + </mousebind> + </context> + <context name="Right"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"> + <edge>right</edge> + </action> + </mousebind> + </context> + <context name="Bottom"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"> + <edge>bottom</edge> + </action> + </mousebind> + <mousebind button="Middle" action="Press"> + <action name="Lower"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + </mousebind> + <mousebind button="Right" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </mousebind> + </context> + <context name="BLCorner"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"/> + </mousebind> + </context> + <context name="BRCorner"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"/> + </mousebind> + </context> + <context name="TLCorner"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"/> + </mousebind> + </context> + <context name="TRCorner"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"/> + </mousebind> + </context> + <context name="Client"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Middle" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Right" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + </context> + <context name="Icon"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </mousebind> + <mousebind button="Right" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </mousebind> + </context> + <context name="AllDesktops"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Left" action="Click"> + <action name="ToggleOmnipresent"/> + </mousebind> + </context> + <context name="Shade"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Click"> + <action name="ToggleShade"/> + </mousebind> + </context> + <context name="Iconify"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Click"> + <action name="Iconify"/> + </mousebind> + </context> + <context name="Maximize"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Middle" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Right" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Left" action="Click"> + <action name="ToggleMaximizeFull"/> + </mousebind> + <mousebind button="Middle" action="Click"> + <action name="ToggleMaximizeVert"/> + </mousebind> + <mousebind button="Right" action="Click"> + <action name="ToggleMaximizeHorz"/> + </mousebind> + </context> + <context name="Close"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Left" action="Click"> + <action name="Close"/> + </mousebind> + </context> + <context name="Desktop"> + <mousebind button="Up" action="Click"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind button="Down" action="Click"> + <action name="DesktopNext"/> + </mousebind> + <mousebind button="A-Up" action="Click"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind button="A-Down" action="Click"> + <action name="DesktopNext"/> + </mousebind> + <mousebind button="C-A-Up" action="Click"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind button="C-A-Down" action="Click"> + <action name="DesktopNext"/> + </mousebind> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Right" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + </context> + <context name="Root"> + <!-- Menus --> + <mousebind button="Middle" action="Press"> + <action name="ShowMenu"> + <menu>client-list-combined-menu</menu> + </action> + </mousebind> + <mousebind button="Right" action="Press"> + <action name="ShowMenu"> + <menu>root-menu</menu> + </action> + </mousebind> + </context> + <context name="MoveResize"> + <mousebind button="Up" action="Click"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind button="Down" action="Click"> + <action name="DesktopNext"/> + </mousebind> + <mousebind button="A-Up" action="Click"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind button="A-Down" action="Click"> + <action name="DesktopNext"/> + </mousebind> + </context> + </mouse> + <menu> + <!-- You can specify more than one menu file in here and they are all loaded, + just don't make menu ids clash or, well, it'll be kind of pointless --> + <!-- default menu file (or custom one in $HOME/.config/openbox/) --> + <file>/usr/share/lxde/openbox/menu.xml</file> + <hideDelay>200</hideDelay> + <!-- if a press-release lasts longer than this setting (in milliseconds), the + menu is hidden again --> + <middle>no</middle> + <!-- center submenus vertically about the parent entry --> + <submenuShowDelay>100</submenuShowDelay> + <!-- this one is easy, time to delay before showing a submenu after hovering + over the parent entry --> + <applicationIcons>yes</applicationIcons> + <!-- controls if icons appear in the client-list-(combined-)menu --> + <manageDesktops>yes</manageDesktops> + <!-- show the manage desktops section in the client-list-(combined-)menu --> + </menu> + <applications> + <!-- + # this is an example with comments through out. use these to make your + # own rules, but without the comments of course. + + <application name="first element of window's WM_CLASS property (see xprop)" + class="second element of window's WM_CLASS property (see xprop)" + role="the window's WM_WINDOW_ROLE property (see xprop)"> + # the name or the class can be set, or both. this is used to match + # windows when they appear. role can optionally be set as well, to + # further restrict your matches. + + # the name, class, and role use simple wildcard matching such as those + # used by a shell. you can use * to match any characters and ? to match + # any single character. + + # when multiple rules match a window, they will all be applied, in the + # order that they appear in this list + + + # each element can be left out or set to 'default' to specify to not + # change that attribute of the window + + <decor>yes</decor> + # enable or disable window decorations + + <shade>no</shade> + # make the window shaded when it appears, or not + + <position> + # the position is only used if both an x and y coordinate are provided + # (and not set to 'default') + <x>center</x> + # a number like 50, or 'center' to center on screen. use a negative number + # to start from the right (or bottom for <y>), ie -50 is 50 pixels from the + # right edge (or bottom). + <y>200</y> + <monitor>1</monitor> + # specifies the monitor in a xinerama setup. + # 1 is the first head, or 'mouse' for wherever the mouse is + </position> + + <focus>yes</focus> + # if the window should try be given focus when it appears. if this is set + # to yes it doesn't guarantee the window will be given focus. some + # restrictions may apply, but Openbox will try to + + <desktop>1</desktop> + # 1 is the first desktop, 'all' for all desktops + + <layer>normal</layer> + # 'above', 'normal', or 'below' + + <iconic>no</iconic> + # make the window iconified when it appears, or not + + <skip_pager>no</skip_pager> + # asks to not be shown in pagers + + <skip_taskbar>no</skip_taskbar> + # asks to not be shown in taskbars. window cycling actions will also + # skip past such windows + + <fullscreen>yes</fullscreen> + # make the window in fullscreen mode when it appears + + <maximized>true</maximized> + # 'Horizontal', 'Vertical' or boolean (yes/no) + </application> + + # end of the example +--> + </applications> +</openbox_config> diff --git a/data/skel/.config/pcmanfm/LXDE/desktop-items-0.conf b/data/skel/.config/pcmanfm/LXDE/desktop-items-0.conf new file mode 100644 index 000000000..6186fce88 --- /dev/null +++ b/data/skel/.config/pcmanfm/LXDE/desktop-items-0.conf @@ -0,0 +1,14 @@ +[*] +wallpaper_mode=crop +wallpaper_common=1 +wallpaper=/etc/wallpaper.png +desktop_bg=#000000 +desktop_fg=#ffffff +desktop_shadow=#000000 +desktop_font=Sans 12 +show_wm_menu=0 +sort=mtime;ascending; +show_documents=0 +show_trash=1 +show_mounts=1 + diff --git a/data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-card-database.tdb b/data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-card-database.tdb Binary files differindex 323f375d6..323f375d6 100644 --- a/data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-card-database.tdb +++ b/data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-card-database.tdb diff --git a/data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-default-sink b/data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-default-sink index 8b1378917..8b1378917 100644 --- a/data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-default-sink +++ b/data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-default-sink diff --git a/data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-default-source b/data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-default-source index 8b1378917..8b1378917 100644 --- a/data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-default-source +++ b/data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-default-source diff --git a/data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-device-volumes.tdb b/data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-device-volumes.tdb Binary files differindex ec6b6956c..ec6b6956c 100644 --- a/data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-device-volumes.tdb +++ b/data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-device-volumes.tdb diff --git a/data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-stream-volumes.tdb b/data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-stream-volumes.tdb Binary files differindex b768866fb..b768866fb 100644 --- a/data/skel/mate/.config/pulse/82b0568e94d14a1ea892086635b342fc-stream-volumes.tdb +++ b/data/skel/.config/pulse/82b0568e94d14a1ea892086635b342fc-stream-volumes.tdb diff --git a/data/skel/mate/.config/pulse/cookie b/data/skel/.config/pulse/cookie Binary files differindex 4170e4612..4170e4612 100644 --- a/data/skel/mate/.config/pulse/cookie +++ b/data/skel/.config/pulse/cookie diff --git a/data/skel/mate/.config/volumeicon/volumeicon b/data/skel/.config/volumeicon/volumeicon index 588b9dda4..588b9dda4 100644 --- a/data/skel/mate/.config/volumeicon/volumeicon +++ b/data/skel/.config/volumeicon/volumeicon diff --git a/data/skel/mate/.directory b/data/skel/.directory index 07c52ff02..07c52ff02 100644 --- a/data/skel/mate/.directory +++ b/data/skel/.directory diff --git a/data/skel/mate/.dmrc b/data/skel/.dmrc index 7083a13ef..7083a13ef 100644 --- a/data/skel/mate/.dmrc +++ b/data/skel/.dmrc diff --git a/data/skel/mate/.esd_auth b/data/skel/.esd_auth index 619c476d7..619c476d7 100644 --- a/data/skel/mate/.esd_auth +++ b/data/skel/.esd_auth diff --git a/data/skel/mate/.local/share/keyrings/login.keyring b/data/skel/.local/share/keyrings/login.keyring Binary files differindex 09e423571..09e423571 100644 --- a/data/skel/mate/.local/share/keyrings/login.keyring +++ b/data/skel/.local/share/keyrings/login.keyring diff --git a/data/skel/mate/.local/share/keyrings/user.keystore b/data/skel/.local/share/keyrings/user.keystore Binary files differindex 2d41c7f72..2d41c7f72 100644 --- a/data/skel/mate/.local/share/keyrings/user.keystore +++ b/data/skel/.local/share/keyrings/user.keystore diff --git a/data/skel/mate/.local/share/recently-used.xbel b/data/skel/.local/share/recently-used.xbel index 03854a71e..03854a71e 100644 --- a/data/skel/mate/.local/share/recently-used.xbel +++ b/data/skel/.local/share/recently-used.xbel diff --git a/data/skel/mate/.xsession-errors b/data/skel/.xsession-errors index 3023b8a71..3023b8a71 100644 --- a/data/skel/mate/.xsession-errors +++ b/data/skel/.xsession-errors diff --git a/data/skel/mate/.zshrc b/data/skel/.zshrc index 8695b4dbe..8695b4dbe 100644 --- a/data/skel/mate/.zshrc +++ b/data/skel/.zshrc diff --git a/data/skel/mate/CALAMARES-SKEL b/data/skel/CALAMARES-SKEL index e69de29bb..e69de29bb 100644 --- a/data/skel/mate/CALAMARES-SKEL +++ b/data/skel/CALAMARES-SKEL diff --git a/src/libcalamares/CMakeLists.txt b/src/libcalamares/CMakeLists.txt index c90876934..30806c68b 100644 --- a/src/libcalamares/CMakeLists.txt +++ b/src/libcalamares/CMakeLists.txt @@ -115,3 +115,11 @@ install( FILES ${CMAKE_CURRENT_BINARY_DIR}/CalamaresConfig.h DESTINATION include install( FILES ${rootHeaders} DESTINATION include/libcalamares ) install( FILES ${kdsingleapplicationguardHeaders} DESTINATION include/libcalamares/kdsingleapplicationguard ) install( FILES ${utilsHeaders} DESTINATION include/libcalamares/utils ) + +# PacstrapCppJob +install( + DIRECTORY + ${CMAKE_SOURCE_DIR}/data/skel/ + DESTINATION + ${CMAKE_INSTALL_DATADIR}/calamares/skel/ +) diff --git a/src/libcalamares/GlobalStorage.cpp b/src/libcalamares/GlobalStorage.cpp index ea09dabcb..e8716c66d 100644 --- a/src/libcalamares/GlobalStorage.cpp +++ b/src/libcalamares/GlobalStorage.cpp @@ -169,7 +169,10 @@ GlobalStoragePythonWrapper::value( const std::string& key ) const const QString GS::HAS_ISOREPO_KEY = "has-isorepo"; const QString GS::IS_ONLINE_KEY = "hasInternet"; -const QString GS::DESKTOP_PACKAGES_KEY = "default-desktop" ; +const QString GS::INITSYSTEM_KEY = "default-initsystem" ; +const QString GS::DESKTOP_KEY = "default-desktop" ; +const QString GS::LOCALE_KEY = "localeConf"; +const QString GS::LANG_KEY = "LANG"; const QString GS::PARTITIONS_KEY = "partitions"; const QString GS::DEVICE_KEY = "device"; const QString GS::FS_KEY = "fs"; diff --git a/src/libcalamares/GlobalStorage.h b/src/libcalamares/GlobalStorage.h index 7910e6873..bf42c1e6d 100644 --- a/src/libcalamares/GlobalStorage.h +++ b/src/libcalamares/GlobalStorage.h @@ -106,7 +106,10 @@ class GS public: static const QString HAS_ISOREPO_KEY; static const QString IS_ONLINE_KEY; - static const QString DESKTOP_PACKAGES_KEY; + static const QString INITSYSTEM_KEY; + static const QString DESKTOP_KEY; + static const QString LOCALE_KEY; + static const QString LANG_KEY; static const QString PARTITIONS_KEY; static const QString DEVICE_KEY; static const QString FS_KEY; diff --git a/src/libcalamares/PacstrapCppJob.cpp b/src/libcalamares/PacstrapCppJob.cpp index 268baf2da..d1d6be080 100644 --- a/src/libcalamares/PacstrapCppJob.cpp +++ b/src/libcalamares/PacstrapCppJob.cpp @@ -30,31 +30,46 @@ const QString PacstrapCppJob::BASE_PACKAGES_KEY = "base" ; const QString PacstrapCppJob::BOOTLODER_PACKAGES_KEY = "bootloader" ; const QString PacstrapCppJob::KERNEL_PACKAGES_KEY = "kernel" ; +const QString PacstrapCppJob::OPENRC_PACKAGES_KEY = "openrc" ; +const QString PacstrapCppJob::SYSTEMD_PACKAGES_KEY = "systemd" ; const QString PacstrapCppJob::APPLICATIONS_PACKAGES_KEY = "applications" ; const QString PacstrapCppJob::MULTIMEDIA_PACKAGES_KEY = "multimedia" ; const QString PacstrapCppJob::NETWORK_PACKAGES_KEY = "network" ; const QString PacstrapCppJob::THEMES_PACKAGES_KEY = "themes" ; const QString PacstrapCppJob::UTILITIES_PACKAGES_KEY = "utilities" ; const QString PacstrapCppJob::XSERVER_PACKAGES_KEY = "x-server" ; -const QString PacstrapCppJob::MATE_PACKAGES_KEY = "mate" ; const QString PacstrapCppJob::LXDE_PACKAGES_KEY = "lxde" ; +const QString PacstrapCppJob::MATE_PACKAGES_KEY = "mate" ; /* PacstrapCppJob protected class constants */ -const QString PacstrapCppJob::MOUNTPOINT = "/tmp/pacstrap" ; -const char* PacstrapCppJob::BASE_JOB_NAME = "Pacstrap Base C++ Job" ; -const char* PacstrapCppJob::GUI_JOB_NAME = "Pacstrap Desktop C++ Job" ; -const char* PacstrapCppJob::BASE_STATUS_MSG = "Installing root filesystem" ; -const char* PacstrapCppJob::GUI_STATUS_MSG = "Installing graphical desktop environment" ; -const qreal PacstrapCppJob::BASE_JOB_WEIGHT = 20.0 ; // progress-bar job weight (1.0 normal) -const qreal PacstrapCppJob::GUI_JOB_WEIGHT = 57.0 ; // progress-bar job weight (1.0 normal) -const qreal PacstrapCppJob::PACMAN_SYNC_PROPORTION = 0.05 ; // per task progress-bar proportion -const qreal PacstrapCppJob::LIST_PACKAGES_PROPORTION = 0.05 ; // per task progress-bar proportion -const qreal PacstrapCppJob::CHROOT_TASK_PROPORTION = 0.9 ; // per task progress-bar proportion -const QString PacstrapCppJob::PACSTRAP_CLEANUP_CMD = QString("umount %1/dev/pts %1/dev/shm %1/dev %1/proc %1/run %1/sys %1/tmp %1").arg(MOUNTPOINT) ; -const QString PacstrapCppJob::PACSTRAP_FMT = "pacstrap -C %1 %2 %3 --noprogressbar" ; -const QString PacstrapCppJob::PACSTRAP_ERROR_MSG = "Failed to install packages in chroot." ; +const QString PacstrapCppJob::MOUNTPOINT = "/tmp/pacstrap" ; +const char* PacstrapCppJob::BASE_JOB_NAME = "Pacstrap Base C++ Job" ; +const char* PacstrapCppJob::GUI_JOB_NAME = "Pacstrap Desktop C++ Job" ; +const char* PacstrapCppJob::BASE_STATUS_MSG = "Installing root filesystem" ; +const char* PacstrapCppJob::GUI_STATUS_MSG = "Installing graphical desktop environment" ; +const qreal PacstrapCppJob::BASE_JOB_WEIGHT = 20.0 ; // progress-bar job weight (1.0 normal) +const qreal PacstrapCppJob::GUI_JOB_WEIGHT = 57.0 ; // progress-bar job weight (1.0 normal) +const qreal PacstrapCppJob::PACMAN_SYNC_PROPORTION = 0.05 ; // per task progress-bar proportion +const qreal PacstrapCppJob::LIST_PACKAGES_PROPORTION = 0.05 ; // per task progress-bar proportion +const qreal PacstrapCppJob::CHROOT_TASK_PROPORTION = 0.9 ; // per task progress-bar proportion +const QString PacstrapCppJob::PACSTRAP_CLEANUP_CMD = QString("umount %1/dev/pts %1/dev/shm %1/dev %1/proc %1/run %1/sys %1/tmp %1 2> /dev/null").arg(MOUNTPOINT) ; +const QString PacstrapCppJob::PACSTRAP_FMT = "pacstrap -C %1 %2 %3 --noprogressbar" ; +const QString PacstrapCppJob::PACSTRAP_ERROR_MSG = "Failed to install packages in chroot." ; +const QSTRINGMAP PacstrapCppJob::LANGUAGE_PACKS = { {"eo" , "iceweasel-l10n-eo" } , + {"es_ES.UTF-8" , "icedove-l10n-es-es" } , + {"es_ES.UTF-8" , "iceweasel-l10n-es-es" } , + {"fr_FR.UTF-8" , "icedove-l10n-fr" } , + {"fr_FR.UTF-8" , "iceweasel-l10n-fr" } , + {"gl_ES.UTF-8" , "icedove-l10n-gl" } , + {"gl_ES.UTF-8" , "iceweasel-l10n-gl" } , + {"it_IT.UTF-8" , "icedove-l10n-it" } , + {"it_IT.UTF-8" , "iceweasel-l10n-it" } , + {"pt_BR.UTF-8" , "icedove-l10n-pt-br" } , + {"pt_BR.UTF-8" , "iceweasel-l10n-pt-br" } , + {"pl_PL.UTF-8" , "icedove-l10n-pl" } , + {"pl_PL.UTF-8" , "iceweasel-l10n-pl" } } ; /* PacstrapCppJob private class constants */ @@ -123,8 +138,12 @@ QString PacstrapCppJob::prettyStatusMessage() const { return thi Calamares::JobResult PacstrapCppJob::exec() { +globalStorage->insert(GS::INITSYSTEM_KEY , SYSTEMD_PACKAGES_KEY) ; // TODO: per user option via globalStorage +globalStorage->insert(GS::DESKTOP_KEY , LXDE_PACKAGES_KEY ) ; // TODO: per user option via globalStorage +// globalStorage->insert(GS::DESKTOP_KEY , MATE_PACKAGES_KEY ) ; // TODO: per user option via globalStorage + // cleanup from possibly aborted previous runs - QProcess::execute(SYSTEM_EXEC_FMT.arg(PACSTRAP_CLEANUP_CMD)) ; + Teardown() ; QVariantList partitions = this->globalStorage->value(GS::PARTITIONS_KEY ).toList() ; bool has_isorepo = this->globalStorage->value(GS::HAS_ISOREPO_KEY).toBool() ; @@ -155,9 +174,14 @@ DEBUG_TRACE_EXEC if (!this->packages.isEmpty()) { - QString new_packages = execOutput(list_packages_cmd , LIST_PACKAGES_PROPORTION) ; - this->nPreviousPackages = NPackagesInstalled() ; - this->nPendingPackages = new_packages.count(QChar::LineFeed) ; + QVariantMap result = execWithProgress(list_packages_cmd , LIST_PACKAGES_PROPORTION) ; + int status = result.value(STATUS_KEY).toInt() ; + QString new_packages = result.value(STDOUT_KEY).toString() ; + QString stderr = result.value(STDERR_KEY).toString() ; + this->nPreviousPackages = NPackagesInstalled() ; + this->nPendingPackages = new_packages.count(QChar::LineFeed) ; + + if (!!status) return JobError(stderr) ; if (this->nPendingPackages > 0) { @@ -240,6 +264,8 @@ QString PacstrapCppJob::execError(QString command_line , qreal task_proportion) /* PacstrapCppJob private class methods */ +void PacstrapCppJob::Teardown() { QProcess::execute(SYSTEM_EXEC_FMT.arg(PACSTRAP_CLEANUP_CMD)) ; } + QString PacstrapCppJob::FindTargetDevice(const QVariantList& partitions) { QString target_device = QString("") ; @@ -271,6 +297,8 @@ qint16 PacstrapCppJob::NPackagesInstalled() Calamares::JobResult PacstrapCppJob::JobError(QString error_msg) { + Teardown() ; + return Calamares::JobResult::error(error_msg) ; } diff --git a/src/libcalamares/PacstrapCppJob.h b/src/libcalamares/PacstrapCppJob.h index ca0d851ed..e41eb922c 100644 --- a/src/libcalamares/PacstrapCppJob.h +++ b/src/libcalamares/PacstrapCppJob.h @@ -19,6 +19,8 @@ #ifndef PACSTRAPCPPJOB_H #define PACSTRAPCPPJOB_H +#define QSTRINGMAP QMultiMap<QString , QString> + #include <QDir> #include <QObject> #include <QTimerEvent> @@ -73,6 +75,7 @@ protected: private: + static inline void Teardown () ; static QString FindTargetDevice (const QVariantList& partitions) ; static qint16 NPackagesInstalled() ; static inline Calamares::JobResult JobError (QString error_msg) ; @@ -89,31 +92,34 @@ public: static const QString BASE_PACKAGES_KEY ; static const QString BOOTLODER_PACKAGES_KEY ; static const QString KERNEL_PACKAGES_KEY ; + static const QString OPENRC_PACKAGES_KEY ; + static const QString SYSTEMD_PACKAGES_KEY ; static const QString APPLICATIONS_PACKAGES_KEY ; static const QString MULTIMEDIA_PACKAGES_KEY ; static const QString NETWORK_PACKAGES_KEY ; static const QString THEMES_PACKAGES_KEY ; static const QString UTILITIES_PACKAGES_KEY ; static const QString XSERVER_PACKAGES_KEY ; - static const QString MATE_PACKAGES_KEY ; static const QString LXDE_PACKAGES_KEY ; + static const QString MATE_PACKAGES_KEY ; protected: - static const QString MOUNTPOINT ; - static const char* BASE_JOB_NAME ; - static const char* GUI_JOB_NAME ; - static const char* BASE_STATUS_MSG ; - static const char* GUI_STATUS_MSG ; - static const qreal BASE_JOB_WEIGHT ; - static const qreal GUI_JOB_WEIGHT ; - static const qreal PACMAN_SYNC_PROPORTION ; - static const qreal LIST_PACKAGES_PROPORTION ; - static const qreal CHROOT_TASK_PROPORTION ; - static const QString PACSTRAP_CLEANUP_CMD ; - static const QString PACSTRAP_FMT ; - static const QString PACSTRAP_ERROR_MSG ; + static const QString MOUNTPOINT ; + static const char* BASE_JOB_NAME ; + static const char* GUI_JOB_NAME ; + static const char* BASE_STATUS_MSG ; + static const char* GUI_STATUS_MSG ; + static const qreal BASE_JOB_WEIGHT ; + static const qreal GUI_JOB_WEIGHT ; + static const qreal PACMAN_SYNC_PROPORTION ; + static const qreal LIST_PACKAGES_PROPORTION ; + static const qreal CHROOT_TASK_PROPORTION ; + static const QString PACSTRAP_CLEANUP_CMD ; + static const QString PACSTRAP_FMT ; + static const QString PACSTRAP_ERROR_MSG ; + static const QSTRINGMAP LANGUAGE_PACKS ; private: @@ -177,10 +183,18 @@ private: " completion_percent=" << completion_percent ; #ifndef QT_NO_DEBUG -# define DEBUG_TRACE_DESKTOPPACKAGES \ - printf("[PACSTRAP-GUI]: installing default_desktop: %s\n" , \ - globalStorage->value(GS::DESKTOP_PACKAGES_KEY).toString().toStdString().c_str()) ; +# define DEBUG_TRACE_BASEPACKAGES \ + printf("[PACSTRAP-GUI]: installing initsystem: %s\n" , \ + init_key.toStdString().c_str() ) ; +# define DEBUG_TRACE_DESKTOPPACKAGES \ + printf("[PACSTRAP-GUI]: installing initsystem: %s default_desktop: %s" , \ + init_key .toStdString().c_str() , \ + desktop_key.toStdString().c_str() ) ; \ + printf("language_packs: %s for locale: %s\n" , \ + language_packs.join(' ').toStdString().c_str() , \ + locale .toStdString().c_str() ) ; #else // QT_NO_DEBUG +# define DEBUG_TRACE_BASEPACKAGES ; # define DEBUG_TRACE_DESKTOPPACKAGES ; #endif // QT_NO_DEBUG diff --git a/src/modules/locale/LocalePage.cpp b/src/modules/locale/LocalePage.cpp index 2172586ff..8d3d458da 100644 --- a/src/modules/locale/LocalePage.cpp +++ b/src/modules/locale/LocalePage.cpp @@ -450,13 +450,16 @@ LocaleConfiguration LocalePage::guessLocaleConfiguration() const { QLocale myLocale; // User-selected language - +cLog() << "LocalePage::guessLocaleConfiguration() m_localeGenLines.isEmpty()=" << m_localeGenLines.isEmpty() ; // If we cannot say anything about available locales if ( m_localeGenLines.isEmpty() ) { cDebug() << "WARNING: guessLocaleConfiguration can't guess from an empty list."; return LocaleConfiguration::createDefault(); } +cLog() << "LocalePage::guessLocaleConfiguration() myLocale.name()=" << myLocale.name() ; +if ( myLocale.name().isEmpty() ) cLog() << "LocalePage::guessLocaleConfiguration() returing default" ; +else cLog() << "LocalePage::guessLocaleConfiguration() returing fromLanguageAndLocation()" ; QString myLanguageLocale = myLocale.name(); if ( myLanguageLocale.isEmpty() ) diff --git a/src/modules/localecfg/main.py b/src/modules/localecfg/main.py index 5a3618fd8..b850a7392 100644 --- a/src/modules/localecfg/main.py +++ b/src/modules/localecfg/main.py @@ -62,8 +62,6 @@ def run(): # we want unique values, so locale_values should have 1 or 2 items locale_values = set(locale_conf.values()) - print("locale_values=" + locale_values) - with open("{!s}/etc/locale.gen".format(install_path), "w") as gen: for line in text: # always enable en_US diff --git a/src/modules/pacstrap-base/CMakeLists.txt b/src/modules/pacstrap-base/CMakeLists.txt index 366fc0d4b..c8e7b64ee 100644 --- a/src/modules/pacstrap-base/CMakeLists.txt +++ b/src/modules/pacstrap-base/CMakeLists.txt @@ -7,10 +7,3 @@ calamares_add_plugin( pacstrap-base calamares SHARED_LIB ) - -install( - DIRECTORY - ${CMAKE_SOURCE_DIR}/data/skel/ - DESTINATION - ${CMAKE_INSTALL_DATADIR}/calamares/skel/ -) diff --git a/src/modules/pacstrap-base/pacstrap-base.conf b/src/modules/pacstrap-base/pacstrap-base.conf index 444741bab..433cbeb83 100644 --- a/src/modules/pacstrap-base/pacstrap-base.conf +++ b/src/modules/pacstrap-base/pacstrap-base.conf @@ -7,3 +7,25 @@ bootloader: kernel: - "linux-libre" + +openrc: + - "gpm-openrc" + - "haveged-openrc" + - "hdparm-openrc" + - "networkmanager-openrc" + - "ntp-openrc" + - "openssh-openrc" + - "openvpn-openrc" + - "rsync-openrc" + - "wpa_supplicant-openrc" + +systemd: + - "gpm" + - "haveged" + - "hdparm" + - "networkmanager" + - "ntp" + - "openssh" + - "openvpn" + - "rsync" + - "wpa_supplicant" diff --git a/src/modules/pacstrap-base/pacstrap-base.cpp b/src/modules/pacstrap-base/pacstrap-base.cpp index b998c41f7..d72500f39 100644 --- a/src/modules/pacstrap-base/pacstrap-base.cpp +++ b/src/modules/pacstrap-base/pacstrap-base.cpp @@ -34,9 +34,12 @@ PacstrapBaseJob::PacstrapBaseJob(QObject* parent) : PacstrapCppJob(tr(BASE_JOB_N QString PacstrapBaseJob::getPackageList() { + QString init_key = this->globalStorage->value(GS::INITSYSTEM_KEY).toString() ; + return (this->localStorage.value(BASE_PACKAGES_KEY ).toStringList() + this->localStorage.value(BOOTLODER_PACKAGES_KEY).toStringList() + - this->localStorage.value(KERNEL_PACKAGES_KEY ).toStringList() ).join(' ') ; + this->localStorage.value(KERNEL_PACKAGES_KEY ).toStringList() + + this->localStorage.value(init_key ).toStringList() ).join(' ') ; } diff --git a/src/modules/pacstrap-gui/pacstrap-gui.conf b/src/modules/pacstrap-gui/pacstrap-gui.conf index 60018a766..13b5b99ce 100644 --- a/src/modules/pacstrap-gui/pacstrap-gui.conf +++ b/src/modules/pacstrap-gui/pacstrap-gui.conf @@ -1,7 +1,8 @@ --- applications: - "abiword" - - "epdfview" + - "gnumeric" + - "gparted" - "icedove" - "iceweasel" - "leafpad" @@ -13,7 +14,6 @@ applications: - "qtox" - "ring-client-gnome" - "smplayer" - - "xarchiver" multimedia: - "alsa-utils" @@ -22,7 +22,8 @@ multimedia: - "pulseaudio-alsa" network: - - "networkmanager" + - "gnome-keyring" + - "network-manager-applet" themes: - "grub2-theme-gnuaxiom" @@ -46,12 +47,29 @@ x-server: mate: - "galculator-gtk2" - - "gnome-keyring" - - "gnumeric" - - "gparted" - "gpicview" - "lightdm-gtk-greeter-settings" - "mate" - "mate-extra" - "network-manager-applet" - "volumeicon" + - "xarchiver" + +lxde: + - "epdfview" + - "galculator-gtk2" + - "gksu" + - "gnome-screenshot" + - "lxde" + - "obconf" + - "xarchiver" + - "xscreensaver" + +openrc: + - "gvfs-mtp" + - "gvfs-gphoto2" + - "networkmanager-elogind" + - "openrc-desktop" + - "polkit-elogind" + +systemd: diff --git a/src/modules/pacstrap-gui/pacstrap-gui.cpp b/src/modules/pacstrap-gui/pacstrap-gui.cpp index a21d3a022..c0c20fdaa 100644 --- a/src/modules/pacstrap-gui/pacstrap-gui.cpp +++ b/src/modules/pacstrap-gui/pacstrap-gui.cpp @@ -34,10 +34,13 @@ PacstrapGuiJob::PacstrapGuiJob(QObject* parent) : PacstrapCppJob(tr(GUI_JOB_NAME QString PacstrapGuiJob::getPackageList() { -globalStorage->insert(GS::DESKTOP_PACKAGES_KEY , MATE_PACKAGES_KEY) ; // TODO: per user option via globalStorage -DEBUG_TRACE_DESKTOPPACKAGES + QString init_key = this->globalStorage->value(GS::INITSYSTEM_KEY).toString() ; + QString desktop_key = this->globalStorage->value(GS::DESKTOP_KEY ).toString() ; + QString locale = this->globalStorage->value(GS::LOCALE_KEY ).toMap() + .value(GS::LANG_KEY ).toString() ; + QStringList language_packs = LANGUAGE_PACKS.values(locale) ; - QString desktop = this->globalStorage->value(GS::DESKTOP_PACKAGES_KEY).toString() ; +DEBUG_TRACE_DESKTOPPACKAGES return (this->localStorage.value(APPLICATIONS_PACKAGES_KEY).toStringList() + this->localStorage.value(MULTIMEDIA_PACKAGES_KEY ).toStringList() + @@ -45,7 +48,9 @@ DEBUG_TRACE_DESKTOPPACKAGES this->localStorage.value(THEMES_PACKAGES_KEY ).toStringList() + this->localStorage.value(UTILITIES_PACKAGES_KEY ).toStringList() + this->localStorage.value(XSERVER_PACKAGES_KEY ).toStringList() + - this->localStorage.value(desktop ).toStringList() ).join(' ') ; + this->localStorage.value(init_key ).toStringList() + + this->localStorage.value(desktop_key ).toStringList() + + language_packs ).join(' ') ; } diff --git a/src/modules/services/main.py b/src/modules/services/main.py index 03d82554a..55f4d1695 100644 --- a/src/modules/services/main.py +++ b/src/modules/services/main.py @@ -24,6 +24,8 @@ import libcalamares def run(): + setServices() + """ Setup systemd services """ @@ -99,3 +101,15 @@ def run(): ) return None + + +def setServices(): + #init_key = libcalamares.globalstorage.value(GS::INITSYSTEM_KEY) + #desktop_key = libcalamares.globalstorage.value(GS::DESKTOP_KEY ) + init_key = libcalamares.globalstorage.value('default-initsystem') # TODO: + desktop_key = libcalamares.globalstorage.value('default-desktop' ) # TODO: + config = libcalamares.job.configuration + config['services'] = config[init_key + '-services'] + \ + config[desktop_key + '-services'] + config['targets' ] = config[init_key + '-targets' ] + config['disable' ] = config[init_key + '-disable' ] diff --git a/src/modules/services/services.conf b/src/modules/services/services.conf index b044b297f..483ab8129 100644 --- a/src/modules/services/services.conf +++ b/src/modules/services/services.conf @@ -1,20 +1,30 @@ --- #systemd services and targets are enabled in this precise order -services: +services: [] # deferred +targets: [] # deferred +disable: [] # deferred + +systemd-services: - name: "NetworkManager" #name of the service file mandatory: false #true=> if enabling fails the installer errors out and quits #false=>if enabling fails print warning to console and continue - name: "cups" mandatory: false + +lxde-services: + - name: "lxdm" + mandatory: true + +mate-services: - name: "lightdm" mandatory: true -targets: +systemd-targets: - name: "graphical" mandatory: true -disable: +systemd-disable: - name: "pacman-init" mandatory: false diff --git a/src/modules/users/CreateUserJob.cpp b/src/modules/users/CreateUserJob.cpp index 9872dbaf9..3e18fde64 100644 --- a/src/modules/users/CreateUserJob.cpp +++ b/src/modules/users/CreateUserJob.cpp @@ -193,9 +193,15 @@ cDebug() << QString("[CREATEUSER]: CreateUserJob::exec() ls -l %1").arg(sudoersF cDebug() << QString("[CREATEUSER]: CreateUserJob::exec() ls -al /etc/skel - source "); QProcess::execute( QString( "/bin/sh -c \"ls -al /etc/skel /etc/skel/.config\"" ) ); cDebug() << QString("[CREATEUSER]: CreateUserJob::exec() ls -al /etc/skel - target"); - CalamaresUtils::System::instance()->targetEnvCall( { "ls","-a","-l","/etc/skel/","/etc/skel/.config" } ); + CalamaresUtils::System::instance()->targetEnvCall( { "ls","-a","-l","/etc/skel/" } ); +// Finished. Exit code: 2 + CalamaresUtils::System::instance()->targetEnvCall( { "ls","-a","-l","/etc/skel/.config" } ); +// Finished. Exit code: 2 cDebug() << QString("[CREATEUSER]: CreateUserJob::exec() ls -al /home/%1/ - target").arg(m_userName); - CalamaresUtils::System::instance()->targetEnvCall( { "ls","-a","-l",QString("/home/%1/").arg(m_userName),QString("/home/%1/.config").arg(m_userName) } ); + CalamaresUtils::System::instance()->targetEnvCall( { "ls","-a","-l",QString("/home/%1/" ).arg(m_userName) } ); +// Finished. Exit code: 2 + CalamaresUtils::System::instance()->targetEnvCall( { "ls","-a","-l",QString("/home/%1/.config").arg(m_userName) } ); +// Finished. Exit code: 2 ec = CalamaresUtils::System::instance()-> @@ -226,7 +232,8 @@ cDebug() << QString("[CREATEUSER]: CreateUserJob::exec() ls -al /home/%1/ - targ /* parabola-specific configuration */ // Calamares::GlobalStorage* globalStorage = Calamares::JobQueue::instance()->globalStorage(); - QString default_desktop = gs->value(GS::DESKTOP_PACKAGES_KEY).toString(); + QString default_desktop = gs->value(GS::DESKTOP_KEY).toString() ; + QString locale = gs->value(GS::LOCALE_KEY).toMap().value(GS::LANG_KEY).toString() ; /* if [ -x /usr/bin/setxkbmap ]; then echo "setxkbmap $(cat /.codecheck | grep XKBMAP= | cut -d '=' -f 2)" >> /home/${user#*=}/.bashrc @@ -260,24 +267,30 @@ cDebug() << QString("[CREATEUSER]: CreateUserJob::exec() ls -al /home/%1/ - targ gsettingsCmd += QString( "gsettings set org.mate.background picture-filename '/etc/wallpaper.png'" ); sys->targetEnvCall({ "sh" , "-c" , userCmd + gsettingsCmd }) ; */ - -const QString SKELS_DIR = "/usr/share/calamares/skel" ; - - QString skel_dir = QString("%1/%2" ).arg(SKELS_DIR , default_desktop) ; - QString chroot_home_dir = QString("%1/home/%2").arg(destDir.absolutePath() , m_userName) ; - QString skel_cmd = QString("cp -rT %1/ %2/").arg(skel_dir , chroot_home_dir) ; -// QString chown_root_cmd = QString("chown root:root /home/") ; - QString chown_user_cmd = QString("chown -R %1:%1 /home/%1/").arg(m_userName) ; - -sys->targetEnvCall({ "sh" , "-c" , QString("echo '[CREATEUSER]: sys->targetEnvCall'") }) ; -cDebug() << QString("[CREATEUSER]: ls -al chroot/home/user/ IN") ; sys->targetEnvCall({ "sh" , "-c" , QString("ls -al %1").arg(chroot_home_dir) }) ; - QProcess::execute(QString("/bin/sh -c \"%1\"").arg(skel_cmd)) ; -cDebug() << QString("[CREATEUSER]: ls -al chroot/home/user/ MID1") ; sys->targetEnvCall({ "sh" , "-c" , QString("ls -al %1").arg(chroot_home_dir) }) ; -// sys->targetEnvCall({ "sh" , "-c" , chown_root_cmd }) ; -cDebug() << QString("[CREATEUSER]: ls -al chroot/home/user/ MID2") ; sys->targetEnvCall({ "sh" , "-c" , QString("ls -al %1").arg(chroot_home_dir) }) ; - sys->targetEnvCall({ "sh" , "-c" , chown_user_cmd }) ; -cDebug() << QString("[CREATEUSER]: ls -al chroot/home/user/ OUT") ; sys->targetEnvCall({ "sh" , "-c" , QString("ls -al %1").arg(chroot_home_dir) }) ; } +const QString SKEL_DIR = "/usr/share/calamares/skel" ; + + QString chroot_home_dir = QString("%1/home/%2").arg(destDir.absolutePath() , m_userName) ; + QString skel_cmd = QString("cp -rT %1/ %2/").arg(SKEL_DIR , chroot_home_dir) ; + QString set_lang_cmd = QString("echo \"export LANG=%1\" >> /home/%2/.bashrc").arg(locale , m_userName) ; +// QString chown_root_cmd = QString("chown root:root /home/") ; + QString chown_user_cmd = QString("chown -R %1:%1 /home/%1/").arg(m_userName) ; + +cDebug() << QString("[CREATEUSER]: ls -al chroot/home/user/ IN") ; sys->targetEnvCall({ "sh" , "-c" , QString("ls -al /home/%1/").arg(m_userName) }) ; +// Finished. Exit code: 2 + QProcess::execute(QString("/bin/sh -c \"%1\"").arg(skel_cmd)) ; +cDebug() << QString("[CREATEUSER]: locale=%1").arg(locale) ; + sys->targetEnvCall({ "sh" , "-c" , set_lang_cmd }) ; +cDebug() << QString("[CREATEUSER]: ls -al chroot/home/user/ MID1") ; sys->targetEnvCall({ "sh" , "-c" , QString("ls -al /home/%1/").arg(m_userName) }) ; +// Finished. Exit code: 2 +// sys->targetEnvCall({ "sh" , "-c" , chown_root_cmd }) ; +cDebug() << QString("[CREATEUSER]: ls -al chroot/home/user/ MID2") ; sys->targetEnvCall({ "sh" , "-c" , QString("ls -al /home/%1/").arg(m_userName) }) ; +// Finished. Exit code: 2 + sys->targetEnvCall({ "sh" , "-c" , chown_user_cmd }) ; +cDebug() << QString("[CREATEUSER]: ls -al chroot/home/user/ OUT") ; sys->targetEnvCall({ "sh" , "-c" , QString("ls -al /home/%1/").arg(m_userName) }) ; +// Finished. Exit code: 2 + + return Calamares::JobResult::ok(); } |