diff --git a/bundles/pacman/files/pacman.conf b/bundles/pacman/files/pacman.conf new file mode 100644 index 0000000..ec92eec --- /dev/null +++ b/bundles/pacman/files/pacman.conf @@ -0,0 +1,39 @@ +[options] +Architecture = auto +CheckSpace +Color +HoldPkg = ${' '.join(sorted(node.metadata.get('pacman/ask_before_removal')))} +ILoveCandy +IgnorePkg = ${' '.join(sorted(node.metadata.get('pacman/ignore_packages', set())))} +LocalFileSigLevel = Optional +ParallelDownloads = ${node.metadata.get('pacman/parallel_downloads')} +SigLevel = Required DatabaseOptional +VerbosePkgLists + +% for line in sorted(node.metadata.get('pacman/additional_config', set())): +${line} +% endfor + +[core] +Server = ${node.metadata.get('pacman/repository')} +Include = /etc/pacman.d/mirrorlist + +[extra] +Server = ${node.metadata.get('pacman/repository')} +Include = /etc/pacman.d/mirrorlist + +[community] +Server = ${node.metadata.get('pacman/repository')} +Include = /etc/pacman.d/mirrorlist + +% if node.metadata.get('pacman/enable_multilib', False): +[multilib] +Server = ${node.metadata.get('pacman/repository')} +Include = /etc/pacman.d/mirrorlist +% endif + +% if node.metadata.get('pacman/enable_aurto', True): +[aurto] +Server = https://aurto.kunbox.net/ +SigLevel = Optional TrustAll +% endif diff --git a/bundles/pacman/items.py b/bundles/pacman/items.py index 52c3f6f..e0a116c 100644 --- a/bundles/pacman/items.py +++ b/bundles/pacman/items.py @@ -3,6 +3,12 @@ from bundlewrap.exceptions import BundleError if not node.os == 'arch': raise BundleError(f'{node.name}: bundle:pacman requires arch linux') +files = { + '/etc/pacman.conf': { + 'content_type': 'mako', + }, +} + # This is more targeted to GUI systems. This is intentional. pkg_pacman = { diff --git a/bundles/pacman/metadata.py b/bundles/pacman/metadata.py new file mode 100644 index 0000000..d4e077f --- /dev/null +++ b/bundles/pacman/metadata.py @@ -0,0 +1,10 @@ +defaults = { + 'pacman': { + 'ask_before_removal': { + 'glibc', + 'pacman', + }, + 'parallel_downloads': 4, + 'repository': 'http://ftp.uni-kl.de/pub/linux/archlinux/$repo/os/$arch', + }, +} diff --git a/nodes/aurto.py b/nodes/aurto.py index 88d0870..ed3f6e6 100644 --- a/nodes/aurto.py +++ b/nodes/aurto.py @@ -45,6 +45,12 @@ nodes['aurto'] = { }, }, }, + 'pacman': { + 'enable_aurto': False, + 'additional_config': { + 'Include = /etc/pacman.d/aurto', + }, + }, 'sudo': { 'extra_configs': { '50_aurto_passwordless': {