removed old result and updated common
This commit is contained in:
@@ -6,8 +6,10 @@ let
|
|||||||
pythonEnv = pkgs.python3.withPackages (ps: [ ps.pygobject3 ]);
|
pythonEnv = pkgs.python3.withPackages (ps: [ ps.pygobject3 ]);
|
||||||
|
|
||||||
installerPy = pkgs.writeShellScriptBin "sovran-install" ''
|
installerPy = pkgs.writeShellScriptBin "sovran-install" ''
|
||||||
export GI_TYPELIB_PATH=${pkgs.gtk4}/lib/girepository-1.0:${pkgs.libadwaita}/lib/girepository-1.0:${pkgs.glib}/lib/girepository-1.0:${pkgs.pango}/lib/girepository-1.0:${pkgs.gdk-pixbuf}/lib/girepository-1.0:${pkgs.graphene}/lib/girepository-1.0:${pkgs.cairo}/lib/girepository-1.0:${pkgs.harfbuzz}/lib/girepository-1.0
|
export GI_TYPELIB_PATH=${pkgs.gtk4}/lib/girepository-1.0:${pkgs.libadwaita}/lib/girepository-1.0:${pkgs.glib}/lib/girepository-1.0:${pkgs.pango}/lib/girepository-1.0:${pkgs.gdk-pixbuf}/lib/girepository-1.0:${pkgs.graphene}/lib/girepository-1.0:${pkgs.cairo}/lib/girepository-1.0:${pkgs.harfbuzz}/lib/girepository-1.0:${pkgs.gobject-introspection}/lib/girepository-1.0
|
||||||
export LD_LIBRARY_PATH=${pkgs.gtk4}/lib:${pkgs.libadwaita}/lib:${pkgs.glib}/lib:${pkgs.pango}/lib:${pkgs.gdk-pixbuf}/lib:${pkgs.graphene}/lib:${pkgs.cairo}/lib:${pkgs.harfbuzz}/lib
|
export LD_LIBRARY_PATH=${pkgs.gtk4}/lib:${pkgs.libadwaita}/lib:${pkgs.glib}/lib:${pkgs.pango}/lib:${pkgs.gdk-pixbuf}/lib:${pkgs.graphene}/lib:${pkgs.cairo}/lib:${pkgs.harfbuzz}/lib
|
||||||
|
export GDK_PIXBUF_MODULE_FILE="${pkgs.gdk-pixbuf}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache"
|
||||||
|
export XDG_DATA_DIRS="${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}:${pkgs.gtk4}/share:${pkgs.libadwaita}/share:${pkgs.adwaita-icon-theme}/share:${pkgs.hicolor-icon-theme}/share:$XDG_DATA_DIRS"
|
||||||
exec ${pythonEnv}/bin/python3 /etc/sovran/installer.py
|
exec ${pythonEnv}/bin/python3 /etc/sovran/installer.py
|
||||||
'';
|
'';
|
||||||
in
|
in
|
||||||
@@ -34,7 +36,7 @@ in
|
|||||||
services.displayManager.autoLogin.enable = true;
|
services.displayManager.autoLogin.enable = true;
|
||||||
services.displayManager.autoLogin.user = lib.mkForce "free";
|
services.displayManager.autoLogin.user = lib.mkForce "free";
|
||||||
|
|
||||||
nix-bitcoin.generateSecrets = true;
|
nix-bitcoin.generateSecrets = lib.mkDefault true;
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
installerPy
|
installerPy
|
||||||
@@ -48,6 +50,8 @@ in
|
|||||||
graphene
|
graphene
|
||||||
cairo
|
cairo
|
||||||
harfbuzz
|
harfbuzz
|
||||||
|
gsettings-desktop-schemas
|
||||||
|
adwaita-icon-theme
|
||||||
util-linux
|
util-linux
|
||||||
disko
|
disko
|
||||||
parted
|
parted
|
||||||
|
|||||||
@@ -2,20 +2,29 @@
|
|||||||
import gi
|
import gi
|
||||||
gi.require_version("Gtk", "4.0")
|
gi.require_version("Gtk", "4.0")
|
||||||
gi.require_version("Adw", "1")
|
gi.require_version("Adw", "1")
|
||||||
from gi.repository import Gtk, Adw, GLib, Pango, GdkPixbuf, Gio
|
from gi.repository import Gtk, Adw, GLib
|
||||||
import subprocess
|
import atexit
|
||||||
import threading
|
|
||||||
import os
|
import os
|
||||||
|
import subprocess
|
||||||
|
import sys
|
||||||
|
import threading
|
||||||
|
|
||||||
LOGO = "/etc/sovran/logo.png"
|
LOGO = "/etc/sovran/logo.png"
|
||||||
LOG = "/tmp/sovran-install.log"
|
LOG = "/tmp/sovran-install.log"
|
||||||
FLAKE = "/etc/sovran/flake"
|
FLAKE = "/etc/sovran/flake"
|
||||||
|
|
||||||
|
try:
|
||||||
logfile = open(LOG, "a")
|
logfile = open(LOG, "a")
|
||||||
|
atexit.register(logfile.close)
|
||||||
|
except OSError:
|
||||||
|
logfile = None
|
||||||
|
|
||||||
def log(msg):
|
def log(msg):
|
||||||
|
if logfile is not None:
|
||||||
logfile.write(msg + "\n")
|
logfile.write(msg + "\n")
|
||||||
logfile.flush()
|
logfile.flush()
|
||||||
|
else:
|
||||||
|
print(msg, file=sys.stderr)
|
||||||
|
|
||||||
def run(cmd):
|
def run(cmd):
|
||||||
log(f"$ {' '.join(cmd)}")
|
log(f"$ {' '.join(cmd)}")
|
||||||
@@ -347,11 +356,10 @@ class InstallerWindow(Adw.ApplicationWindow):
|
|||||||
|
|
||||||
def on_confirm_next(self, btn):
|
def on_confirm_next(self, btn):
|
||||||
if self._confirm_entry.get_text().strip() != "ERASE":
|
if self._confirm_entry.get_text().strip() != "ERASE":
|
||||||
dlg = Adw.MessageDialog(
|
dlg = Adw.MessageDialog()
|
||||||
transient_for=self,
|
dlg.set_transient_for(self)
|
||||||
heading="Confirmation Required",
|
dlg.set_heading("Confirmation Required")
|
||||||
body="You must type ERASE exactly to proceed."
|
dlg.set_body("You must type ERASE exactly to proceed.")
|
||||||
)
|
|
||||||
dlg.add_response("ok", "OK")
|
dlg.add_response("ok", "OK")
|
||||||
dlg.present()
|
dlg.present()
|
||||||
return
|
return
|
||||||
|
|||||||
Reference in New Issue
Block a user