Nothing gets compiled when Flatpak manifest has only 1 module
Environment
- Builder 3.32.2 flatpak-stable
- Endless OS 3.7.0 (development branch)
Steps to reproduce
- Clone https://gitlab.gnome.org/GNOME/baobab
- Launch Builder
- Click Build
- Click Run
Expected results
- Baobab compiles, which takes at least a few seconds
- Baobab runs
Actual results
- “build” is almost instantaneous because nothing is compiled:
Creating directory “/sysroot/home/wjt/.var/app/org.gnome.Builder/cache/gnome-builder/projects/baobab/flatpak/repo”
Creating directory “/sysroot/home/wjt/.var/app/org.gnome.Builder/cache/gnome-builder/projects/baobab/flatpak/staging/x86_64-master”
flatpak build-init --arch=x86_64 /sysroot/home/wjt/.var/app/org.gnome.Builder/cache/gnome-builder/projects/baobab/flatpak/staging/x86_64-master org.gnome.baobab org.gnome.Sdk org.gnome.Platform master
flatpak-builder --arch=x86_64 --ccache --force-clean --state-dir /sysroot/home/wjt/.var/app/org.gnome.Builder/cache/gnome-builder/flatpak-builder --download-only --disable-updates --stop-at=baobab /sysroot/home/wjt/.var/app/org.gnome.Builder/cache/gnome-builder/projects/baobab/flatpak/staging/x86_64-master /sysroot/home/wjt/src/gnome/baobab/build-aux/flatpak/org.gnome.baobab.json
Emptying app dir '/sysroot/home/wjt/.var/app/org.gnome.Builder/cache/gnome-builder/projects/baobab/flatpak/staging/x86_64-master'
Downloading sources
Stopping at module baobab
flatpak-builder --arch=x86_64 --ccache --force-clean --disable-updates --disable-download --state-dir /sysroot/home/wjt/.var/app/org.gnome.Builder/cache/gnome-builder/flatpak-builder --stop-at=baobab /sysroot/home/wjt/.var/app/org.gnome.Builder/cache/gnome-builder/projects/baobab/flatpak/staging/x86_64-master /sysroot/home/wjt/src/gnome/baobab/build-aux/flatpak/org.gnome.baobab.json
Initializing build dir
Committing stage init to cache
Starting build of org.gnome.baobab
Stopping at module baobab
Pruning cache
- Running Baobab fails because it has not been compiled:
Application started at 11:08:08
bwrap: execvp baobab: No such file or directory
Application exited
I think what's going on is that Baobab has an unusually simple manifest with only one module: itself.
{
"app-id" : "org.gnome.baobab",
"runtime" : "org.gnome.Platform",
"runtime-version" : "master",
"sdk" : "org.gnome.Sdk",
"command" : "baobab",
/* irrelevant stuff redacted */
"modules" : [
{
"name" : "baobab",
"buildsystem" : "meson",
"builddir" : true,
"sources" : [
{
"type" : "git",
"url" : "https://gitlab.gnome.org/GNOME/baobab.git"
}
]
}
]
}
If I add a dummy extra module as follows:
"modules" : [
{
"name": "dummy",
"buildsystem": "simple",
"build-commands": [
"echo OK"
]
},
{
"name" : "baobab",
"buildsystem" : "meson",
"builddir" : true,
"sources" : [
{
"type" : "git",
"url" : "https://gitlab.gnome.org/GNOME/baobab.git"
}
]
}
]
Then everything works as expected.
Edited by Will Thompson