From e9628b64d8deb0f5aae7c282a8f1c4358807119d Mon Sep 17 00:00:00 2001 From: Ron Williams Date: Thu, 21 Nov 2024 15:06:54 +0000 Subject: [PATCH] Fix CI, add packages to ci.toml so desktop can build from binaries --- .gitlab-ci.yml | 42 +++++++++++++++++++++++++++++++++++++++++ config/x86_64/ci.toml | 19 +++++++++++-------- config/x86_64/demo.toml | 1 + config/x86_64/full.toml | 9 +++++++++ mk/ci.mk | 2 +- 5 files changed, 64 insertions(+), 9 deletions(-) create mode 100644 .gitlab-ci.yml create mode 100644 config/x86_64/full.toml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..4734b0f --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,42 @@ +# The GitLab Continuous Integration configuration +image: "ubuntu:22.04" + +variables: + GIT_STRATEGY: "clone" + GIT_SUBMODULE_STRATEGY: "recursive" + +before_script: + # Disable the wget progress bar + - echo 'show-progress = off' >> ~/.wgetrc + - | + export DEBIAN_FRONTEND=noninteractive + apt-get update -qq && + apt-get install -qq \ + bison \ + build-essential \ + curl \ + flex \ + fuse3 \ + git \ + libfuse-dev \ + nasm \ + pkg-config \ + texinfo \ + wget \ + zstd && + curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain none + +img: + script: + - | + source "$HOME/.cargo/env" && + curl -L --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/cargo-bins/cargo-binstall/main/install-from-binstall-release.sh | bash && + cargo binstall --no-confirm --version 0.1.1 cargo-config && + cargo binstall --no-confirm --version 1.16.0 just && + cargo binstall --no-confirm --version 0.27.0 cbindgen && + cargo build --manifest-path installer/Cargo.toml --release && + PODMAN_BUILD=0 REPO_BINARY=1 make ci-img IMG_TAG=$CI_COMMIT_REF_NAME + artifacts: + paths: + - build/img/ + expire_in: 1 week diff --git a/config/x86_64/ci.toml b/config/x86_64/ci.toml index 03b7034..706d527 100644 --- a/config/x86_64/ci.toml +++ b/config/x86_64/ci.toml @@ -8,7 +8,7 @@ prompt = false # Package settings [packages] acid = {} -atk = {} +#atk = {} # depends on glib which does not build audiod = {} autoconf = {} automake = {} @@ -33,6 +33,7 @@ cosmic-text = {} cpal = {} curl = {} dash = {} +dejavu = {} diffutils = {} dosbox = {} drivers = {} @@ -65,13 +66,13 @@ generaluser-gs = {} gettext = {} gigalomania = {} git = {} -glib = {} +#glib = {} # does not build glutin = {} gnu-binutils = {} gnu-grep = {} gnu-make = {} #gstreamer = {} # conflict with thread local errno -harfbuzz = {} +#harfbuzz = {} # depends on glib which does not build #hematite = {} # needs crate patches for redox-unix hicolor-icon-theme = {} init = {} @@ -83,6 +84,7 @@ ion = {} ipcd = {} #jansson = {} # needs config.sub update kernel = {} +kibi = {} lci = {} libc-bench = {} libffi = {} @@ -97,7 +99,7 @@ libvorbis = {} libxml2 = {} llvm18 = {} logd = {} -lua54 = {} +#lua54 = {} # did not build #mdp = {} # ncursesw mednafen = {} mesa = {} @@ -143,9 +145,9 @@ perg = {} periodictable = {} #perl5 = {} # ctermid, tempnam, ttyname pixelcannon = {} -pixman = {} +#pixman = {} # depends on glib which does not build #pkgar = {} # uses virtual Cargo.toml, needs recipe update -pkg-config = {} +#pkg-config = {} # depends on glib which does not build pkgutils = {} pop-icon-theme = {} #powerline = {} # dirs @@ -161,7 +163,7 @@ redoxerd = {} redox-fatfs = {} redoxfs = {} redox-games = {} -redox-ssh = {} +#redox-ssh = {} # does not compile relibc = {} #relibc-tests = {} # madvise link error resist = {} @@ -173,6 +175,7 @@ rust = {} rust64 = {} rust-cairo = {} rust-cairo-demo = {} +rustpython = {} rustual-boy = {} schismtracker = {} scummvm = {} @@ -208,7 +211,7 @@ uutils = {} #vice = {} # linker errors vim = {} vttest = {} -vvvvvv = {} +#vvvvvv = {} # did not compile #webrender = {} # unwind #wesnoth = {} #winit = {} # tzset diff --git a/config/x86_64/demo.toml b/config/x86_64/demo.toml index f6c24d3..f988c72 100644 --- a/config/x86_64/demo.toml +++ b/config/x86_64/demo.toml @@ -21,6 +21,7 @@ git = {} gnu-grep = {} ripgrep = {} sodium = {} +vim = {} # Games dosbox = {} diff --git a/config/x86_64/full.toml b/config/x86_64/full.toml new file mode 100644 index 0000000..e50ede1 --- /dev/null +++ b/config/x86_64/full.toml @@ -0,0 +1,9 @@ +include = [ "../base.toml", "ci.toml" ] + +# General settings +[general] +filesystem_size = 8192 + +# Package settings +[packages] +# example = {} \ No newline at end of file diff --git a/mk/ci.mk b/mk/ci.mk index 4c78c75..a699b9c 100644 --- a/mk/ci.mk +++ b/mk/ci.mk @@ -9,7 +9,7 @@ IMG_DIR?=build/img/$(ARCH) ci-img: FORCE rm -rf $(IMG_DIR) mkdir -p $(IMG_DIR) - $(MAKE) demo desktop server + $(MAKE) server desktop demo cd $(IMG_DIR) && zstd --rm * cd $(IMG_DIR) && sha256sum -b * > SHA256SUM