Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
1530618
refactor(core): build nbd
nevermarine Apr 21, 2025
499a632
add nbd version
nevermarine Apr 21, 2025
cd6e69f
install autoconf-archive
nevermarine Apr 21, 2025
34e54e6
add configure step
nevermarine Apr 21, 2025
97571b4
cleanup packages and options (possibly destructive)
nevermarine Apr 21, 2025
8990a87
add libtool
nevermarine Apr 21, 2025
7e0c7e9
add makeinfo and pkg-config
nevermarine Apr 21, 2025
d36e3fe
libnl & dockbook
nevermarine Apr 21, 2025
88d345c
move opts to configure
nevermarine Apr 21, 2025
722dba4
remove disable tests
nevermarine Apr 21, 2025
cb6def5
debug
nevermarine Apr 21, 2025
01c8ff1
escape newline in autogen.sh
nevermarine Apr 21, 2025
40cbaf0
debug 2: electric boogaloo
nevermarine Apr 21, 2025
b97a4c5
move options again
nevermarine Apr 21, 2025
fe4553d
comment out manpages
nevermarine Apr 21, 2025
7e3d56c
add musl
nevermarine Apr 22, 2025
75f1882
fix packages
nevermarine Apr 22, 2025
98f820b
debug 3
nevermarine Apr 22, 2025
79232ac
return to shared build
nevermarine Apr 24, 2025
c1ee9bc
add binaries to cdi-importer
nevermarine Apr 24, 2025
ff55362
fix cdi-importer
nevermarine Apr 24, 2025
df30e89
add cp -a step
nevermarine Apr 24, 2025
56134d0
before: install
nevermarine Apr 24, 2025
12e91e4
tree outdir
nevermarine Apr 24, 2025
a962aa0
tree
nevermarine Apr 24, 2025
1fc3b3e
tree
nevermarine Apr 24, 2025
88f6bb3
move to nbdkit
nevermarine Apr 25, 2025
a341c2a
fix MAKEDEV spelling
nevermarine Apr 25, 2025
3dc42ca
gnutls30 -> libgnutls30
nevermarine Apr 25, 2025
4f3f103
remove gcc-defaults
nevermarine Apr 25, 2025
91f4896
devel
nevermarine Apr 25, 2025
65caf04
udev umount & restart
nevermarine Apr 25, 2025
1b8b663
remove MAKEDEV
nevermarine Apr 25, 2025
dedb092
autoreconf
nevermarine Apr 25, 2025
724d919
/usr
nevermarine Apr 25, 2025
6e1c4cb
tree
nevermarine Apr 25, 2025
bd0ac22
tree
nevermarine Apr 25, 2025
a02230e
nbdkit build
nevermarine Apr 25, 2025
af0d3f9
remove tree
nevermarine Apr 25, 2025
867c077
/usr/lib
nevermarine Apr 28, 2025
0f7324c
remove qemu-img
nevermarine Apr 28, 2025
4f71c83
tree
nevermarine Apr 28, 2025
4be583c
tree
nevermarine Apr 28, 2025
9f58ce0
stars
nevermarine Apr 28, 2025
5399274
remove tree
nevermarine Apr 28, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions component_versions/version_map.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@ package:
xorriso: 1.5.6
numactl: 2.0.19
openssl: openssl-3.4.1
nbdkit: 1.39.5
15 changes: 10 additions & 5 deletions images/cdi-importer/werf.inc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,15 @@ libraries:
- libsqlite3
packages:
- libnbd
- nbd-client
- nbd-server
binaries:
# All nbd binaries
- /usr/bin/nbd*
# nbd bins and libs
- /usr/sbin/nbdkit
- /usr/lib/nbdkit/filters/*
- /usr/lib/nbdkit/plugins/*
# Mount
- /usr/bin/mount /usr/bin/umount
# Sqlite libs
- /usr/lib64/libsqlite3.so.0
- /usr/lib64/libsqlite3.so.0
# Block device binaries
- /usr/sbin/blockdev
# CDI binaries
Expand All @@ -52,6 +52,10 @@ import:
add: /qemu-img
to: /relocate
before: setup
- image: packages/binaries/nbdkit
add: /nbdkit
to: /nbdkit
before: setup
shell:
install:
- |
Expand All @@ -62,4 +66,5 @@ shell:
- rm --recursive --force /var/lib/apt/lists/ftp.altlinux.org* /var/cache/apt/*.bin
setup:
- |
cp -a /nbdkit/. /
/relocate_binaries.sh -i "{{ $cdiImporterDependencies.binaries | join " " }}" -o /relocate
83 changes: 83 additions & 0 deletions images/packages/binaries/nbdkit/werf.inc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
---
image: {{ $.ImageType }}/{{ $.ImageName }}
final: false
fromImage: builder/scratch
import:
- image: {{ $.ImageType }}/{{ $.ImageName }}-builder
add: /out
to: /nbdkit
before: setup

---
{{- $version := get $.Package $.ImageName }}
{{- $gitRepoUrl := "nbdkit/nbdkit.git" }}

{{- $name := print $.ImageName "-dependencies" -}}
{{- define "$name" -}}
packages:
- git gcc
- automake autoconf-archive make libtool
# - MAKEDEV
- bash-completion
- curl
- qemu
- libisoburn
- e2fsprogs
- expect
- libgnutls30
- filesystem
- socat
- jq
- iproute2
- xz
- zlib-ng
- zstd
- zlib
- libblkio
- libnbd
- libtorrent-rasterbar-devel
- libssh
{{- end -}}

{{ $builderDependencies := include "$name" . | fromYaml }}

image: {{ $.ImageType }}/{{ $.ImageName }}-builder
final: false
fromImage: builder/alt
secrets:
- id: SOURCE_REPO
value: {{ $.SOURCE_REPO_GIT }}
shell:
beforeInstall:
- |
# /etc/init.d/udevd umount
apt-get update && apt-get install -y \
{{ $builderDependencies.packages | join " " }}
# /etc/init.d/udevd restart

apt-get update
apt-get clean
rm --recursive --force /var/lib/apt/lists/ftp.altlinux.org* /var/cache/apt/*.bin

install:
- |
OUTDIR=/out
mkdir -p ~/.ssh && echo "StrictHostKeyChecking accept-new" > ~/.ssh/config

git clone --depth=1 $(cat /run/secrets/SOURCE_REPO)/{{ $gitRepoUrl }} --branch v{{ $version }} /src
cd /src

autoreconf -i

./configure \
--disable-static \
--prefix=/usr \
--without-bash-completions

make -j$(nproc)

make DESTDIR=$OUTDIR install-strip

# We don't need man, test and samples files
rm -rf $OUTDIR/usr/include
rm -rf $OUTDIR/usr/share
Loading