Brand Hydra OS image and add custom Fastfetch summary
This commit is contained in:
@@ -251,6 +251,21 @@ def enable_user_audio(root):
|
||||
raise ImageError('Cannot enable user audio sockets: ' + result.stderr.strip())
|
||||
|
||||
|
||||
def brand_os_release(root):
|
||||
"""Override derivative identity while retaining packaged Gentoo release fields."""
|
||||
release = root_path(root, 'etc/os-release')
|
||||
if not release.is_file():
|
||||
release = root_path(root, 'usr/lib/os-release')
|
||||
original = release.read_text() if release.is_file() else ''
|
||||
retained = [line for line in original.splitlines()
|
||||
if not re.match(r'^(NAME|PRETTY_NAME|ID|ID_LIKE)=', line)]
|
||||
retained += ['NAME="Hydra OS"', 'PRETTY_NAME="Hydra OS"',
|
||||
'ID=hydra-os', 'ID_LIKE=gentoo']
|
||||
# Gentoo links /etc/os-release to its packaged file; keep that file intact.
|
||||
remove(root, 'etc/os-release')
|
||||
write(root, 'etc/os-release', '\n'.join(retained) + '\n')
|
||||
|
||||
|
||||
def configure_rootfs(root, source):
|
||||
root, source = Path(root), Path(source)
|
||||
# Refuse incomplete integrations before changing the exported copy.
|
||||
@@ -264,6 +279,7 @@ def configure_rootfs(root, source):
|
||||
alias.symlink_to(kernel.name)
|
||||
sanitize_rootfs(root)
|
||||
copy_overlay(root, source / 'image/rootfs')
|
||||
brand_os_release(root)
|
||||
write(root, 'etc/hydra/live-mode/dracut.conf', (source / 'image/dracut.conf').read_text())
|
||||
root_path(root, 'etc/hydra/live-mode/dracut.conf.d').mkdir()
|
||||
package = root_path(root, 'usr/lib/hydra/hydra')
|
||||
|
||||
Reference in New Issue
Block a user