diff --git a/gx-env-load-desktop b/gx-env-load-desktop index b2dadab..fc54784 100755 --- a/gx-env-load-desktop +++ b/gx-env-load-desktop @@ -4,4 +4,4 @@ gx-env-run-root python3 /gx-env/gx-env-load-desktop-in-chroot if [[ ! -d /usr/share/applications/gx-env ]]; then sudo mkdir /usr/share/applications/gx-env -p fi -sudo cp $chrootEnvPath/gx-env/desktop/* /usr/share/applications/gx-env -v \ No newline at end of file +pkexec cp $chrootEnvPath/gx-env/desktop/* /usr/share/applications/gx-env -v \ No newline at end of file diff --git a/gx-env-run b/gx-env-run index baffb5f..8a5e276 100755 --- a/gx-env-run +++ b/gx-env-run @@ -6,16 +6,16 @@ chrootEnvPath=/opt/new-system-env #fi if [[ -f ~/.config/gx-env/bwrap ]]; then bwrap --dev-bind / / --dev-bind $chrootEnvPath/etc /etc --dev-bind $chrootEnvPath/opt /opt --dev-bind $chrootEnvPath/usr /usr --dev-bind $chrootEnvPath/var /var --dev-bind $chrootEnvPath/bin /bin --dev-bind $chrootEnvPath/boot /boot --dev-bind $chrootEnvPath/lib /lib --dev-bind $chrootEnvPath/lib32 /lib32 --dev-bind $chrootEnvPath/lib64 /lib64 --dev-bind $chrootEnvPath/libx32 /libx32 --dev-bind $chrootEnvPath/gx-env /gx-env "$@" - pkexec gx-env-load-desktop + #pkexec env `` gx-env-load-desktop exit fi echo aa > /tmp/env-$USER.txt if [[ ! -f $chrootEnvPath/tmp/env-$USER.txt ]]; then echo 未挂载目录,立即挂载 - pkexec gx-env-init + pkexec env `printenv` gx-env-init fi command="$@" #echo $command pkexec env `printenv` chroot $chrootEnvPath sudo -u $USER bash -c "$command" #echo $@ -pkexec gx-env-load-desktop \ No newline at end of file +#pkexec gx-env-load-desktop \ No newline at end of file diff --git a/gui/runner.py b/gx-env-run-gui similarity index 100% rename from gui/runner.py rename to gx-env-run-gui diff --git a/gx-env-run-root b/gx-env-run-root index 76ad6dd..99bc472 100755 --- a/gx-env-run-root +++ b/gx-env-run-root @@ -5,20 +5,17 @@ chrootEnvPath=/opt/new-system-env # exit 1 #fi if [[ -f ~/.config/gx-env/bwrap ]]; then - if [[ `whoami` != "root" ]]; then - echo 请使用 root 权限运行 - exit 1 - fi - bwrap --dev-bind / / --dev-bind $chrootEnvPath/etc /etc --dev-bind $chrootEnvPath/opt /opt --dev-bind $chrootEnvPath/usr /usr --dev-bind $chrootEnvPath/var /var --dev-bind $chrootEnvPath/bin /bin --dev-bind $chrootEnvPath/boot /boot --dev-bind $chrootEnvPath/lib /lib --dev-bind $chrootEnvPath/lib32 /lib32 --dev-bind $chrootEnvPath/lib64 /lib64 --dev-bind $chrootEnvPath/libx32 /libx32 --dev-bind $chrootEnvPath/gx-env /gx-env "$@" - pkexec gx-env-load-desktop + pkexec env `printenv` bwrap --dev-bind / / --dev-bind $chrootEnvPath/etc /etc --dev-bind $chrootEnvPath/opt /opt --dev-bind $chrootEnvPath/usr /usr --dev-bind $chrootEnvPath/var /var --dev-bind $chrootEnvPath/bin /bin --dev-bind $chrootEnvPath/boot /boot --dev-bind $chrootEnvPath/lib /lib --dev-bind $chrootEnvPath/lib32 /lib32 --dev-bind $chrootEnvPath/lib64 /lib64 --dev-bind $chrootEnvPath/libx32 /libx32 --dev-bind $chrootEnvPath/gx-env /gx-env "$@" + #pkexec gx-env-load-desktop exit fi echo aa > /tmp/env-$USER.txt if [[ ! -f $chrootEnvPath/tmp/env-$USER.txt ]]; then echo 未挂载目录,立即挂载 - sudo gx-env-mount-root + pkexec env `printenv` gx-env-mount-root fi command="$@" #echo $command -pkexec env DISPLAY=$DISPLAY chroot $chrootEnvPath "$@" +pkexec env `printenv` chroot $chrootEnvPath "$@" +#pkexec gx-env-load-desktop #echo $@ \ No newline at end of file diff --git a/gx-env-setting-gui b/gx-env-setting-gui new file mode 100644 index 0000000..e765392 --- /dev/null +++ b/gx-env-setting-gui @@ -0,0 +1,27 @@ +#!/usr/bin/env python3 +import os +import sys +import threading +import PyQt5.QtWidgets as QtWidgets + + +app = QtWidgets.QApplication(sys.argv) +window = QtWidgets.QMainWindow() +widget = QtWidgets.QWidget() +layout = QtWidgets.QGridLayout() +sparkStoreRun = QtWidgets.QPushButton("打开星火应用商店") +gdebiRun = QtWidgets.QPushButton("安装 deb 包") +xfce4TerminalRun = QtWidgets.QPushButton("终端") +xfce4TerminalRootRun = QtWidgets.QPushButton("终端(root)") +sparkStoreRun.clicked.connect(lambda: threading.Thread(target=os.system, args=["gx-env-run-root spark-store --no-sandbox ; pkexec env `printenv` gx-env-run"]).start()) +gdebiRun.clicked.connect(lambda: threading.Thread(target=os.system, args=["gx-env-run-root gdebi ; pkexec env `printenv` gx-env-run"]).start()) +xfce4TerminalRun.clicked.connect(lambda: threading.Thread(target=os.system, args=["gx-env-run xfce4-terminal"]).start()) +xfce4TerminalRootRun.clicked.connect(lambda: threading.Thread(target=os.system, args=["gx-env-run-root xfce4 ; pkexec env `printenv` gx-env-run"]).start()) +layout.addWidget(sparkStoreRun, 0, 0) +layout.addWidget(gdebiRun, 0, 1) +layout.addWidget(xfce4TerminalRun, 0, 2) +layout.addWidget(xfce4TerminalRootRun, 0, 3) +widget.setLayout(layout) +window.setCentralWidget(widget) +window.show() +sys.exit(app.exec_()) \ No newline at end of file