diff --git a/pmb/helpers/git.py b/pmb/helpers/git.py index a71bd8db..60f95a96 100644 --- a/pmb/helpers/git.py +++ b/pmb/helpers/git.py @@ -56,9 +56,11 @@ def clone(args, name_repo, shallow=True): def rev_parse(args, revision="HEAD"): + """ Run "git rev-parse" in the pmaports.git dir. + + :returns: commit string like "90cd0ad84d390897efdcf881c0315747a4f3a966" + """ + rev = pmb.helpers.run.user(args, ["git", "rev-parse", revision], - args.aports, output_return=True, check=False) - if rev is None: - logging.warning("WARNING: Failed to determine revision of git repository at " + args.aports) - return "" + args.aports, output_return=True) return rev.rstrip() diff --git a/pmb/install/file.py b/pmb/install/file.py index f1da8631..cb611302 100644 --- a/pmb/install/file.py +++ b/pmb/install/file.py @@ -25,21 +25,18 @@ import pmb.helpers.git def write_os_release(args, suffix): logging.info("(" + suffix + ") write /etc/os-release") revision = pmb.helpers.git.rev_parse(args) - has_revision = revision != "" filepath = args.work + "/chroot_" + suffix + "/tmp/os-release" os_release = ('PRETTY_NAME="postmarketOS {version}"\n' 'NAME="postmarketOS"\n' 'VERSION_ID="{version}"\n' - 'VERSION="{version}{sep}{hash:.8}"\n' + 'VERSION="{version}-{hash:.8}"\n' 'ID="postmarketos"\n' 'ID_LIKE="alpine"\n' 'HOME_URL="https://www.postmarketos.org/"\n' 'SUPPORT_URL="https://gitlab.com/postmarketOS"\n' 'BUG_REPORT_URL="https://gitlab.com/postmarketOS/pmbootstrap/issues"\n' - ).format(version=pmb.config.version, - sep=("-" if has_revision else ""), hash=revision) - if has_revision: - os_release += ('PMOS_HASH="{hash}"\n').format(hash=revision) + 'PMOS_HASH="{hash}"\n' + ).format(version=pmb.config.version, hash=revision) with open(filepath, "w") as handle: handle.write(os_release) pmb.chroot.root(args, ["mv", "/tmp/os-release", "/etc/os-release"], suffix)