Initial commit
Signed-off-by: Jacob Hrbek <kreyren@member.fsf.org>
This commit is contained in:
commit
1b05764ccf
6
.drone.yml
Normal file
6
.drone.yml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
pipeline:
|
||||||
|
ci-flow:
|
||||||
|
image: rust:latest
|
||||||
|
commands:
|
||||||
|
- cargo install --debug cargo-make
|
||||||
|
- cargo make build
|
7
.github/CODEOWNERS
vendored
Normal file
7
.github/CODEOWNERS
vendored
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# Reference to configuration - https://github.blog/2017-07-06-introducing-code-owners/
|
||||||
|
# Relevant https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
|
||||||
|
|
||||||
|
# This file is used to set permission per team or user to allow auto-merging
|
||||||
|
|
||||||
|
# Rights for the creator
|
||||||
|
* @kreyren
|
5
.github/FUNDING.yml
vendored
Normal file
5
.github/FUNDING.yml
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# Funding page for the original creator
|
||||||
|
github: kreyren
|
||||||
|
|
||||||
|
# Referer link on github.com/kreyren
|
||||||
|
custom: https://my.fsf.org/join?referrer=3706032
|
13
.github/README.md
vendored
Normal file
13
.github/README.md
vendored
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
FIXME-GFX(Krey): Header here
|
||||||
|
<img src="img/header-image.png" width="100%"/>
|
||||||
|
|
||||||
|
[![Built with cargo-make](https://sagiegurari.github.io/cargo-make/assets/badges/cargo-make.svg)](https://sagiegurari.github.io/cargo-make)
|
||||||
|
|
||||||
|
Repository creating devuan templateVM package for various distributions providing domain-0 (dom0) on QubesOS with priority for the default fedora.
|
||||||
|
|
||||||
|
### Goal
|
||||||
|
Get devuan templateVM on QubesOS
|
||||||
|
|
||||||
|
### Abstract
|
||||||
|
1. Create the devuan userland with scripts to put it in TemplateVM of QubesOS
|
||||||
|
2. Package it
|
33
.github/workflows/ci.yml
vendored
Normal file
33
.github/workflows/ci.yml
vendored
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
# Template from https://github.com/sagiegurari/ci_info/blob/master/.github/workflows/ci.yml
|
||||||
|
name: CI
|
||||||
|
on: [push, pull_request]
|
||||||
|
env:
|
||||||
|
CLICOLOR_FORCE: 1
|
||||||
|
jobs:
|
||||||
|
ci:
|
||||||
|
name: CI
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
rust: stable
|
||||||
|
os: [ ubuntu-latest, windows-latest, macOS-latest ]
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Install rust
|
||||||
|
uses: actions-rs/toolchain@v1
|
||||||
|
with:
|
||||||
|
toolchain: ${{ matrix.rust }}
|
||||||
|
profile: minimal
|
||||||
|
override: true
|
||||||
|
- name: Install cargo-make
|
||||||
|
uses: actions-rs/cargo@v1
|
||||||
|
with:
|
||||||
|
command: install
|
||||||
|
args: --debug cargo-make
|
||||||
|
- name: Run CI
|
||||||
|
uses: actions-rs/cargo@v1
|
||||||
|
with:
|
||||||
|
command: make
|
||||||
|
args: build
|
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
# Exclude the build target
|
||||||
|
build/
|
2
.gitpod.yml
Normal file
2
.gitpod.yml
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
# FIXME-GITPOD(Krey): Typefox kicked me from their org for bullshit reasons and gitpod by itself is limiting factor when it comes to development e.g. lack of root and access to /dev/kvm for virtualization. Provided as-is to comply with GNU phylosophy and patches accepted
|
||||||
|
image: gitpod/workspace-full:latest
|
5
.vscode/settings.json
vendored
Normal file
5
.vscode/settings.json
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"editor.tabSize": 2,
|
||||||
|
"editor.renderWhitespace": "all",
|
||||||
|
"editor.insertSpaces": false
|
||||||
|
}
|
30
CONTRIBUTING.md
Normal file
30
CONTRIBUTING.md
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
FIXME-GFX(Krey): Add header image
|
||||||
|
|
||||||
|
# Code indexing (tags)
|
||||||
|
Source code in this project is adapted for rolling release with versioned releases and as such the code requires to be indexed for continous improvements that were captured during a quality assurance.
|
||||||
|
|
||||||
|
You are encouraged to search the source code and look for these tags to resolve them.
|
||||||
|
|
||||||
|
## Resolving FIXME tags
|
||||||
|
Source code in this project has comments above an imperfect code that needs resolving which is sorted in follwing categories:
|
||||||
|
- FIXME = General fixme
|
||||||
|
- FIXME-QA = Fixme concerning Code quality
|
||||||
|
- FIXME-AUTO = Fixme concerning automatization such as Continuous integrationg
|
||||||
|
- FIXME-TRANSLATE = Codeblocks that return an output and need translating in different spoken language
|
||||||
|
- FIXME-CROSS = Codeblocks that needs implementation for cross-platform
|
||||||
|
- FIXME-GFX = Tags for graphics-releted concerns
|
||||||
|
- FIXME-<EDITOR> = Tags concerning configuration of the development environment
|
||||||
|
|
||||||
|
Example of FIXME tag:
|
||||||
|
```sh
|
||||||
|
# FIXME-QA(Krey): Complaining about things
|
||||||
|
echo something
|
||||||
|
```
|
||||||
|
|
||||||
|
## Resolving DNM (DoNotMerge) tags
|
||||||
|
This repository is manage on rolling-release with versioned releases, the main branch might contain `DNM` tags in the source code for things that needs to be resolved prior to merging that should be resolved with priority. These tags share categories with FIXME tags.
|
||||||
|
|
||||||
|
These tags prevent versioned release.
|
||||||
|
|
||||||
|
# Peer-Review
|
||||||
|
Any relevant information concerning the implementation is appreciated.
|
187
LICENSE.md
Normal file
187
LICENSE.md
Normal file
File diff suppressed because one or more lines are too long
89
Makefile.toml
Normal file
89
Makefile.toml
Normal file
@ -0,0 +1,89 @@
|
|||||||
|
# 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}"
|
||||||
|
'''
|
||||||
|
|
BIN
img/header-image.png
Normal file
BIN
img/header-image.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 666 B |
Loading…
Reference in New Issue
Block a user