subiquity/snapcraft.yaml

161 lines
4.5 KiB
YAML

name: subiquity
base: core18
version: git
summary: Ubuntu installer
description: The Ubuntu server installer
confinement: classic
apps:
subiquity:
command: usr/bin/subiquity
environment:
PYTHONIOENCODING: utf-8
subiquity-loadkeys:
command: usr/bin/subiquity-loadkeys
subiquity-configure-apt:
command: usr/bin/subiquity-configure-apt
subiquity-configure-run:
command: usr/bin/subiquity-configure-run
console-conf:
command: usr/bin/console-conf
probert:
command: bin/probert
subiquity-server:
command: usr/bin/subiquity-server
daemon: simple
restart-condition: always
environment:
PYTHONIOENCODING: utf-8
subiquity-service:
command: usr/bin/subiquity-service
daemon: simple
restart-condition: always
environment:
PYTHONIOENCODING: utf-8
parts:
curtin:
override-pull: |
snapcraftctl pull
PACKAGED_VERSION="$(git describe --long --abbrev=9 --match=[0-9][0-9]*)"
sed -e "s,@@PACKAGED_VERSION@@,$PACKAGED_VERSION,g" -i curtin/version.py
plugin: python
source-type: git
source: https://git.launchpad.net/curtin
source-tag: "21.2"
python-packages:
- pyyaml==5.3.1
- oauthlib
- jsonschema
- pyrsistent
organize:
'lib/python*/site-packages/usr/lib/curtin': 'usr/lib/'
stage:
- "*"
- "-lib/python*/site-packages/_yaml.*.so"
- "-lib/python*/site-packages/jsonschema"
apport:
plugin: python
source-type: bzr
source: lp:~ubuntu-core-dev/ubuntu/focal/apport/ubuntu
build-packages:
- python3-distutils-extra
- python3-apt
- python3-httplib2
- python3-problem-report
- python3-requests-unixsocket
stage-packages:
- python3-distutils-extra
- python3-apt
- python3-httplib2
- python3-problem-report
- python3-requests-unixsocket
stage:
- "lib/python*/site-packages/"
- "-lib/python*/site-packages/etc/*"
- "-lib/python*/site-packages/lib/*"
- "share/apport/general-hooks/"
- "usr/"
subiquity:
plugin: python
build-packages:
- libsystemd-dev
- lsb-release
- pkg-config
- python3-urwid
stage-packages:
- cloud-init
- libsystemd0
- iso-codes
- lsb-release
- python3-bson
- python3-urwid
- python3-requests
- python3-requests-unixsocket
- ssh-import-id
python-packages:
- attrs
- pyyaml==5.3.1
- systemd-python
- aiohttp
- yarl==1.5.1
#- urwid
source: .
source-type: git
organize:
'bin/console-conf-tui': usr/bin/console-conf
'bin/subiquity-tui': usr/bin/subiquity
'bin/subiquity-loadkeys': usr/bin/subiquity-loadkeys
'bin/subiquity-service': usr/bin/subiquity-service
'bin/subiquity-server': usr/bin/subiquity-server
'bin/subiquity-configure-apt': usr/bin/subiquity-configure-apt
'bin/subiquity-configure-run': usr/bin/subiquity-configure-run
users-and-groups:
plugin: nil
build-packages:
- user-setup
override-build: |
echo "get passwd/user-default-groups" | \
debconf-communicate user-setup | \
cut -d ' ' -f 2- > $SNAPCRAFT_PART_INSTALL/users-and-groups
cp /usr/lib/user-setup/reserved-usernames $SNAPCRAFT_PART_INSTALL/
stage:
- users-and-groups
- reserved-usernames
kbdnames:
plugin: nil
build-packages:
- console-setup
- locales
- xkb-data-i18n
override-build: |
/usr/share/console-setup/kbdnames-maker /usr/share/console-setup/KeyboardNames.pl > $SNAPCRAFT_PART_INSTALL/kbdnames.txt
stage:
- kbdnames.txt
font:
plugin: dump
source: ./
organize:
font/subiquity.psf: subiquity.psf
stage:
- subiquity.psf
languagelists:
plugin: nil
build-packages:
- localechooser-data
override-build: |
grep '^path-exclude=.*LC_MESSAGES.*' /etc/dpkg/dpkg.cfg.d/excludes && {
sed -i 's/^path-exclude.*LC_MESSAGES.*/#\0/g' /etc/dpkg/dpkg.cfg.d/excludes
apt-get -y install --reinstall iso-codes
} || true
$SNAPCRAFT_PROJECT_DIR/scripts/make-language-lists $SNAPCRAFT_PROJECT_DIR/po > $SNAPCRAFT_PART_INSTALL/languagelist
stage:
- languagelist
probert:
plugin: python
build-packages: [python-setuptools, build-essential, libnl-3-dev, libnl-genl-3-dev, libnl-route-3-dev]
source: https://github.com/canonical/probert.git
source-type: git
source-commit: 844c957b7f61f78bbd814cceef87f0d8eb218675
requirements: [requirements.txt]