Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Hvornum <anton.feeds+github@gmail.com>2020-07-08 10:46:52 +0000
committerAnton Hvornum <anton.feeds+github@gmail.com>2020-07-08 10:46:52 +0000
commitaecd333ea3020c0c575948763089cc829c36c56d (patch)
treedd126920c2eb75180455a7ec454bf7f711548aa0
parent3ed8db5ef0b065583e35f924f3f9d09290f03a37 (diff)
v2.0.3 prep release. Profile now fully support python scripting instead of JSON. They also support importing archinstall and doing whatever the examples are doing - with one tiiiny TODO/hack/magic, the 'installer' session that is contextulized gets hard-inserted into the globals() scope. Since the child script won't actually have the global instance of the parent, we need to insert it to be known due to the way we import stuff
-rw-r--r--archinstall/lib/profiles.py1
-rw-r--r--profiles/desktop.py27
2 files changed, 27 insertions, 1 deletions
diff --git a/archinstall/lib/profiles.py b/archinstall/lib/profiles.py
index bccdf34d..07bd3fd4 100644
--- a/archinstall/lib/profiles.py
+++ b/archinstall/lib/profiles.py
@@ -88,6 +88,7 @@ class Profile():
def install(self):
instructions = self.load_instructions()
if type(instructions) == Imported:
+ __builtins__['installation'] = self.installer # There's no easy way to give the imported profile the installer instance unless we require the profile-programmer to create a certain function that must be the same for all.. Which is a bit inconvenient so lets just make it truly global
with instructions as runtime:
log(f'Profile {self.name} finished successfully.')
else:
diff --git a/profiles/desktop.py b/profiles/desktop.py
index ce99b646..ba9bde38 100644
--- a/profiles/desktop.py
+++ b/profiles/desktop.py
@@ -1,2 +1,27 @@
import archinstall
-print('Installing desktop using:', archinstall) \ No newline at end of file
+
+arguments = {
+ 'keyboard_layout' : 'sv-latin1',
+ "editor" : "nano",
+ "mediaplayer" : "lollypop gstreamer gst-plugins-good gnome-keyring",
+ "filebrowser" : "nemo gpicview-gtk3",
+ "webbrowser" : "chromium",
+ "window_manager" : "awesome",
+ "window_manager_dependencies" : "xorg-server xorg-xrandr xorg-xinit xterm",
+ "window_manager_utilities" : "feh slock xscreensaver terminus-font-otb gnu-free-fonts ttf-liberation xsel",
+ "virtulization" : "qemu ovmf",
+ "utils" : "openssh sshfs git htop pkgfile scrot dhclient wget smbclient cifs-utils libu2f-host",
+ "audio" : "pulseaudio pulseaudio-alsa pavucontrol"
+}
+
+installation.add_additional_packages("{_webbrowser} {_utils} {_mediaplayer} {_window_manager} {_window_manager_dependencies} {_window_manager_utilities} {_virtulization} {_filebrowser} {_editor}".format(**arguments))
+
+with open(f'{installation.mountpoint}/etc/X11/xinit/xinitrc', 'a') as X11:
+ X11.write('setxkbmap se\n')
+
+with open(f'{installation.mountpoint}/etc/vconsole.conf', 'a') as vconsole:
+ vconsole.write('KEYMAP={keyboard_layout}\n'.format(**arguments))
+ vconsole.write('FONT=lat9w-16\n')
+
+awesome = archinstall.Application(installation, 'awesome')
+awesome.install() \ No newline at end of file