From 0cd088572d4c9a45711eb7a358cb4c2edd98e450 Mon Sep 17 00:00:00 2001 From: Anton Hvornum Date: Wed, 22 Jul 2020 01:03:14 +0000 Subject: 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) --- profiles/applications/awesome.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 profiles/applications/awesome.py (limited to 'profiles/applications') 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 -- cgit v1.2.3-54-g00ecf