1b05764ccf
Signed-off-by: Jacob Hrbek <kreyren@member.fsf.org>
90 lines
3.1 KiB
INI
90 lines
3.1 KiB
INI
# This is a cargo-make file used to manage the repository
|
|
|
|
# FIXME-VSCODIUM(Krey): Add configuration to install 'Even Better TOML' for this repository only
|
|
|
|
[config]
|
|
default_task_name = "default"
|
|
|
|
[env]
|
|
# FIXME-QA(Krey): Set this to the '$PWD/build'
|
|
# FIXME-QA(Krey): Duplicate code
|
|
BUILD = { value = "/home/user/Repositories/qubes-template-devuan/build", condition = { env_not_set = ["/home/user/Repositories/qubes-template-devuan/build"] } }
|
|
# DNM(Krey): Deduce why HOME is not available in tasks
|
|
HOME = "/home/user"
|
|
|
|
# Codename handling
|
|
devuan-stable-codename = "beowulf"
|
|
devuan-testing-codename = "chimaera"
|
|
|
|
# Command overrides
|
|
DEBOOTSTRAP = "debootstrap"
|
|
|
|
[tasks.build]
|
|
description = "Build all targets"
|
|
# DNM(Krey): This doesn't work -> Figure out how to get it to execute tasks prefixed with `build`
|
|
dependencies = [
|
|
"build-devuan-stable-minimal",
|
|
"build-devuan-testing-minimal"
|
|
]
|
|
|
|
# FIXME-CROSS(Krey): How can we builds this on Windows?
|
|
# FIXME-CROSS(Krey): How can we builds this on Darwin?
|
|
# FIXME-CROSS(Krey): How can we builds this on Redox?
|
|
# FIXME-CROSS(Krey): How can we builds this on FreeBSD?
|
|
[tasks.build-devuan-stable-minimal]
|
|
description = "Creates a devuan stable userland in build directory"
|
|
category = "core"
|
|
# FIXME-QA(Krey): Implement handling for privileged execution (https://github.com/sagiegurari/cargo-make/issues/501)
|
|
command = "${DEBOOTSTRAP}"
|
|
args = [
|
|
"--arch=amd64",
|
|
"--variant=minbase",
|
|
"--no-merged-usr",
|
|
# FIXME-QA(Krey): Expecting double-quottes that are not interpreted
|
|
"--cache-dir=${HOME}/.cache",
|
|
# DNM(Krey): On non-devuan systems we need devuan's GPG set, using no-check for testing
|
|
"--no-check-gpg",
|
|
"${devuan-stable-codename }",
|
|
"${BUILD}/devuan/${devuan-stable-codename }",
|
|
# FIXME-PRIVACY(Krey): Use tor here
|
|
"http://deb.devuan.org/merged"
|
|
]
|
|
|
|
# FIXME-QA(Krey): Duplicate code
|
|
# FIXME-CROSS(Krey): How can we builds this on Windows?
|
|
# FIXME-CROSS(Krey): How can we builds this on Darwin?
|
|
# FIXME-CROSS(Krey): How can we builds this on Redox?
|
|
# FIXME-CROSS(Krey): How can we builds this on FreeBSD?
|
|
[tasks.build-devuan-testing-minimal]
|
|
description = "Creates a devuan stable userland in build directory"
|
|
category = "core"
|
|
# FIXME-QA(Krey): Implement handling for privileged execution (https://github.com/sagiegurari/cargo-make/issues/501)
|
|
command = "debootstrap"
|
|
args = [
|
|
"--arch=amd64",
|
|
"--variant=minbase",
|
|
"--no-merged-usr",
|
|
# FIXME-QA(Krey): Expecting double-quottes that are not interpreted
|
|
"--cache-dir=${HOME}/.cache",
|
|
# DNM(Krey): On non-devuan systems we need devuan's GPG set, using no-check for testing
|
|
"--no-check-gpg",
|
|
"${devuan-stable-release}",
|
|
"${BUILD}/devuan/${devuan-stable-release}",
|
|
# FIXME-PRIVACY(Krey): Use The Onion Routing here
|
|
"http://deb.devuan.org/merged"
|
|
]
|
|
|
|
# DNM(Krey): Package for fedora-32 GNU/Linux
|
|
# DNM(Krey): Package for devuan GNU/Linux
|
|
# DNM(Krey): Package for enoch-based e.g. Argent Linux GNU/Linux
|
|
# DNM(Krey): Package for Arch GNU/Linux
|
|
|
|
# FIXME-CROSS(Krey): Translate in duckscript (https://github.com/sagiegurari/duckscript/issues/147)
|
|
[tasks.clean]
|
|
description = "Remove temporary directories"
|
|
script = '''
|
|
#!/bin/sh
|
|
[ ! -d "${BUILD}" ] || rm -r "${BUILD}"
|
|
'''
|
|
|