ImageBuilder has only base Pkgs

Hi,

I read https://openwrt.org/docs/guide-user/additional-software/imagebuilder and wanted to assemble my on custom Image with:

OPENWRT_VERSION=21.02
PACKAGES="cfdisk curl fstools git-http kmod-bonding luci-proto-wireguard nano-full vpn-policy-routing wireguard-tools zsh"
COMMAND="make image PROFILE=generic PACKAGES=$PACKAGES FILES=files"
docker run --platform linux/amd64 --rm -v "$(pwd)"/bin/:/home/build/openwrt/bin -v "$(pwd)"/files:/home/build/openwrt/files openwrtorg/imagebuilder:x86-64-openwrt-$OPENWRT_VERSION $COMMAND

It will create an image but it will only contain the standard base packages.

When running make info only the base packages are listed:

build@58452b8c0a02:~/openwrt$ make info
Current Target: "x86/64"
Current Revision: "r16554-1d4dea6d4f"
Default Packages: base-files ca-bundle dropbear fstools libc libgcc libustream-wolfssl logd mtd netifd opkg uci uclient-fetch urandom-seed urngd busybox procd partx-utils mkf2fs e2fsprogs kmod-button-hotplug dnsmasq firewall ip6tables iptables kmod-ipt-offload odhcp6c odhcpd-ipv6only ppp ppp-mod-pppoe
Available Profiles:

generic:
    Generic x86/64
    Packages: kmod-bnx2 kmod-e1000e kmod-e1000 kmod-forcedeth kmod-igb kmod-ixgbe kmod-r8169
    hasImageMetadata: 0

I also tried updating the feeds, but it fails as well:

build@58452b8c0a02:~/openwrt$ ./scripts/feeds update -a
Unable to open feeds configuration at ./scripts/feeds line 91.

What am I doing wrong? Any suggestions?

Cheers,
Nils

./scripts/feeds update -a and ./scripts/feeds install -a -- you left out the part that tells the script what to do.

Sorry typo, I tried build@58452b8c0a02:~/openwrt$ ./scripts/feeds update -a Unable to open feeds configuration at ./scripts/feeds line 91.

Oh, right, I completely missed you're using the imagebuilder. You don't need to execute that script at all with the imagebuilder.

But why are there only the default package available? I thought the main usage of the imagebuilder was to assemble a custom image with some extra packages pre installed?

You'd probably want:
COMMAND="make image PROFILE=generic PACKAGES=\"$PACKAGES\" FILES=files"

Ok it was a escaping problem:

docker run --platform linux/amd64 --rm -v "$(pwd)"/bin/:/home/build/openwrt/bin -v "$(pwd)"/files:/home/build/openwrt/files openwrtorg/imagebuilder:x86-64-openwrt-$OPENWRT_VERSION bash -c "make image PROFILE='generic' PACKAGES='$PACKAGES' FILES='files'"

works :+1:

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.