Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/profiles
diff options
context:
space:
mode:
authorAnton Hvornum <anton.feeds+github@gmail.com>2020-07-22 01:03:14 +0000
committerAnton Hvornum <anton.feeds+github@gmail.com>2020-07-22 01:03:14 +0000
commit0cd088572d4c9a45711eb7a358cb4c2edd98e450 (patch)
tree19d3a2664050dbf35fd2b76b862d94c9f260f412 /profiles
parentc884a2523746892d15257b68f6f3681119681cf3 (diff)
New feature: application profiles now support .py as well. Also fixed a sys.path issue where an installed version of archinstall would have precedence over the local version when profiles were being executed (because profiles were living in a unknown relative working directory, the caller to those profiles have to make sure .archinstall exists in sys.path before calling said profile)
Diffstat (limited to 'profiles')
-rw-r--r--profiles/applications/awesome.py27
-rw-r--r--profiles/desktop.py4
2 files changed, 28 insertions, 3 deletions
diff --git a/profiles/applications/awesome.py b/profiles/applications/awesome.py
new file mode 100644
index 00000000..032edad5
--- /dev/null
+++ b/profiles/applications/awesome.py
@@ -0,0 +1,27 @@
+import archinstall
+
+installation.add_additional_packages("awesome xorg-server xorg-xrandr xorg-xinit xterm feh slock xscreensaver terminus-font-otb gnu-free-fonts ttf-liberation xsel")
+
+with open(f'{installation.mountpoint}/etc/X11/xinit/xinitrc', 'r') as xinitrc:
+ xinitrc_data = xinitrc.read()
+
+xinitrc_data = xinitrc_data.replace('twm &', '# twm &').replace('\nxclock ', '\n# xclock').replace('exec xterm', '# exec xterm')
+xinitrc_data += '\nxscreensaver -no-splash &\n'
+xinitrc_data += 'exec awesome\n'
+with open(f'{installation.mountpoint}/etc/X11/xinit/xinitrc', 'w') as xinitrc:
+ xinitrc.write(xinitrc_data)
+
+with open(f'{installation.mountpoint}/etc/xdg/awesome/rc.lua', 'r') as awesome_rc_lua:
+ awesome = awesome_rc_lua.read()
+
+awesome = awesome.replace('xterm', 'xterm -ls -xrm "XTerm*selectToClipboard: true"')
+awesome = awesome.replace('{ "open terminal", terminal, ','{ "Chromium", "chromium" },\n "open terminal", terminal, ')
+awesome = awesome.replace('{ "open terminal", terminal, ', '{ "File handler", "nemo" },\n "open terminal", terminal, ')
+awesome = awesome.replace('\nglobalkeys = gears.table.join(', 'globalkeys = gears.table.join(\n awful.key({ modkey, }, \"l\", function() awful.spawn(\"xscreensaver-command -lock &\") end),\n')
+# "awk -i inplace -v RS='' '{gsub(/awful.key\\({ modkey,.*?}, \"Tab\",.*?\"client\"}\\),/, \"awful.key({ modkey, }, \"Tab\",\n function ()\n awful.client.focus.byidx(-1)\n if client.focus then\n client.focus:raise()\n end\n end),\n awful.key({ modkey, \"Shift\" }, \"Tab\",\n function ()\n awful.client.focus.byidx(1)\n if client.focus then\n client.focus.raise()\n end\n end),\"); print}' {installation.mountpoint}/etc/xdg/awesome/rc.lua" : {"no-chroot" : true},
+
+with open(f'{installation.mountpoint}/etc/xdg/awesome/rc.lua', 'w') as awesome_rc_lua:
+ awesome_rc_lua.write(awesome)
+
+installation.arch_chroot('gsettings set org.nemo.desktop show-desktop-icons false')
+installation.arch_chroot('xdg-mime default nemo.desktop inode/directory application/x-gnome-saved-search') \ No newline at end of file
diff --git a/profiles/desktop.py b/profiles/desktop.py
index ba9bde38..a1c2cdba 100644
--- a/profiles/desktop.py
+++ b/profiles/desktop.py
@@ -7,14 +7,12 @@ arguments = {
"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))
+installation.add_additional_packages("{webbrowser} {utils} {mediaplayer} {window_manager} {virtulization} {filebrowser} {editor}".format(**arguments))
with open(f'{installation.mountpoint}/etc/X11/xinit/xinitrc', 'a') as X11:
X11.write('setxkbmap se\n')