From 06c89243670c2662d0aedead76ec7230f6ff332a Mon Sep 17 00:00:00 2001 From: r00t Date: Tue, 11 Apr 2017 01:34:14 -0400 Subject: [PATCH 1/2] root user check --- bdisk/bdisk.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bdisk/bdisk.py b/bdisk/bdisk.py index 7de3efb..40655bd 100755 --- a/bdisk/bdisk.py +++ b/bdisk/bdisk.py @@ -8,12 +8,15 @@ import bSSL import ipxe import bsync import bGPG +import os # we need to: # we also need to figure out how to implement "mentos" (old bdisk) like functionality, letting us reuse an existing chroot install if possible to save time for future builds. # if not, though, it's no big deal. # still on the todo: iPXE if __name__ == '__main__': + if os.getuid() != 0: + exit('{0}: ERROR: BDisk *must* be run as the root user or with sudo!'.format(datetime.datetime.now())) print('{0}: Starting.'.format(datetime.datetime.now())) conf = host.parseConfig(host.getConfig())[1] prep.dirChk(conf) From 6760b46c5dafd2175e848a165008305b1cf01b5b Mon Sep 17 00:00:00 2001 From: r00t Date: Tue, 11 Apr 2017 02:07:52 -0400 Subject: [PATCH 2/2] and adding a tweak to check the pwd parent for the project dir --- bdisk/host.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/bdisk/host.py b/bdisk/host.py index ee26361..f282c16 100755 --- a/bdisk/host.py +++ b/bdisk/host.py @@ -28,6 +28,7 @@ def getConfig(conf_file='/etc/bdisk/build.ini'): conf = False # define some defailt conf paths in case we're installed by # a package manager. in order of the paths we should search. + currentdir = os.path.abspath('{0}/../extra/dist.build.ini'.format(os.path.dirname(os.path.realpath(__file__)))) default_conf_paths = ['/etc/bdisk/build.ini', '/usr/share/bdisk/build.ini', '/usr/share/bdisk/extra/build.ini', @@ -36,7 +37,8 @@ def getConfig(conf_file='/etc/bdisk/build.ini'): '/usr/local/share/docs/bdisk/build.ini', '/opt/dev/bdisk/build.ini', '/opt/dev/bdisk/extra/build.ini', - '/opt/dev/bdisk/extra/dist.build.ini'] + '/opt/dev/bdisk/extra/dist.build.ini', + currentdir] # if we weren't given one/using the default... if conf_file == '/etc/bdisk/build.ini': if not os.path.isfile(conf_file):