Add support of autostart in i3
parent
9b123a3731
commit
e3fc3aceaa
|
@ -161,7 +161,7 @@ class ManjaroHello():
|
||||||
for page in ("readme", "release", "involved"):
|
for page in ("readme", "release", "involved"):
|
||||||
self.builder.get_object(page + "label").set_markup(self.read_page(page))
|
self.builder.get_object(page + "label").set_markup(self.read_page(page))
|
||||||
|
|
||||||
def change_autostart(self, autostart):
|
def set_autostart(self, autostart):
|
||||||
"""Set state of autostart.
|
"""Set state of autostart.
|
||||||
:param autostart: wanted autostart state
|
:param autostart: wanted autostart state
|
||||||
:type autostart: bool
|
:type autostart: bool
|
||||||
|
@ -171,6 +171,18 @@ class ManjaroHello():
|
||||||
os.symlink(self.desktop_path, self.autostart_path)
|
os.symlink(self.desktop_path, self.autostart_path)
|
||||||
elif not autostart and os.path.isfile(self.autostart_path):
|
elif not autostart and os.path.isfile(self.autostart_path):
|
||||||
os.unlink(self.autostart_path)
|
os.unlink(self.autostart_path)
|
||||||
|
# Specific to i3
|
||||||
|
i3_config = os.path.expanduser("~") + "/.i3/config"
|
||||||
|
if os.path.isfile(i3_config):
|
||||||
|
i3_autostart = "exec --no-startup-id manjaro-hello"
|
||||||
|
with open(i3_config, "r+") as f:
|
||||||
|
content = f.read()
|
||||||
|
f.seek(0)
|
||||||
|
if autostart:
|
||||||
|
f.write(content.replace("#" + i3_autostart, i3_autostart))
|
||||||
|
else:
|
||||||
|
f.write(content.replace(i3_autostart, "#" + i3_autostart))
|
||||||
|
f.truncate()
|
||||||
except OSError as e:
|
except OSError as e:
|
||||||
print(e)
|
print(e)
|
||||||
self.autostart = autostart
|
self.autostart = autostart
|
||||||
|
@ -219,7 +231,7 @@ class ManjaroHello():
|
||||||
subprocess.call(["sudo", "-E", "calamares"])
|
subprocess.call(["sudo", "-E", "calamares"])
|
||||||
elif name == "autostart":
|
elif name == "autostart":
|
||||||
autostart = True if action.get_active() else False
|
autostart = True if action.get_active() else False
|
||||||
self.change_autostart(autostart)
|
self.set_autostart(autostart)
|
||||||
elif name == "about":
|
elif name == "about":
|
||||||
dialog = self.builder.get_object("aboutdialog")
|
dialog = self.builder.get_object("aboutdialog")
|
||||||
dialog.set_transient_for(self.window)
|
dialog.set_transient_for(self.window)
|
||||||
|
@ -262,8 +274,8 @@ def get_lsb_infos():
|
||||||
"""
|
"""
|
||||||
lsb = {}
|
lsb = {}
|
||||||
try:
|
try:
|
||||||
with open("/etc/lsb-release") as lsb_file:
|
with open("/etc/lsb-release") as f:
|
||||||
for line in lsb_file:
|
for line in f:
|
||||||
if "=" in line:
|
if "=" in line:
|
||||||
var, arg = line.rstrip().split("=")
|
var, arg = line.rstrip().split("=")
|
||||||
if var.startswith("DISTRIB_"):
|
if var.startswith("DISTRIB_"):
|
||||||
|
|
Loading…
Reference in New Issue