diff --git a/packages/dovecot.shrap b/packages/dovecot.shrap new file mode 100644 index 0000000..7c1e963 --- /dev/null +++ b/packages/dovecot.shrap @@ -0,0 +1,11 @@ +(package + (name "dovecot") + (version "2.4.2") + (homepage "https://dovecot.org/") + (dependencies libopenssl zlib pkg-config libsodium libicu libpcre2) + (src (tar + (url "https://dovecot.org/releases/2.4/dovecot-2.4.2.tar.gz") + (dir "dovecot-2.4.2") + (blake3 "4c2e20d48eaa337e65cf85c07f1940c38353f8b4041d843eae6a4906edc9ad9a"))) + (build + (configure_make))) diff --git a/packages/iproute2.shrap b/packages/iproute2.shrap new file mode 100644 index 0000000..1de3659 --- /dev/null +++ b/packages/iproute2.shrap @@ -0,0 +1,11 @@ +(package + (name "iproute2") + (version "6.19.0") + (homepage "https://wiki.linuxfoundation.org/networking/iproute2") + (dependencies flex bison elfutils libbpf) + (src (tar + (url "https://mirrors.edge.kernel.org/pub/linux/utils/net/iproute2/iproute2-6.19.0.tar.gz") + (dir "iproute2-6.19.0") + (blake3 "909b2f5b5cdfc4de6810c78c74980ecc466374c03c17c16791ac7ab10d9223a1"))) + (build + (configure_make))) diff --git a/packages/iptables.shrap b/packages/iptables.shrap new file mode 100644 index 0000000..aaf5f3b --- /dev/null +++ b/packages/iptables.shrap @@ -0,0 +1,11 @@ +(package + (name "iptables") + (version "1.8.12") + (homepage "https://www.netfilter.org/projects/iptables/index.html") + (dependencies libmnl libnftnl pkg-config) + (src (tar + (url "https://www.netfilter.org/pub/iptables/iptables-1.8.12.tar.xz") + (dir "iptables-1.8.12") + (blake3 "f785063f0a7c88e5facb08d8df3d85dc23e471fd151fdb2fa07295d4ccfe7e95"))) + (build + (configure_make))) diff --git a/packages/libbpf.shrap b/packages/libbpf.shrap new file mode 100644 index 0000000..d7e37ee --- /dev/null +++ b/packages/libbpf.shrap @@ -0,0 +1,12 @@ +(package + (name "libbpf") + (version "1.6.3") + (homepage "https://docs.kernel.org/bpf/libbpf/libbpf_overview.html") + (dependencies make) + (src (tar + (url "https://github.com/libbpf/libbpf/archive/refs/tags/v1.6.3.tar.gz") + (dir "libbpf-1.6.3/src") + (blake3 "beb8075a8acc35f45e08331f819c1a79080064b162fa02ca0232ab29c71e0b16"))) + (build + (make + (make_flags "LIBSUBDIR=lib")))) diff --git a/packages/libdbus.shrap b/packages/libdbus.shrap new file mode 100644 index 0000000..117e66a --- /dev/null +++ b/packages/libdbus.shrap @@ -0,0 +1,11 @@ +(package + (name "libdbus") + (version "1.16.2") + (homepage "https://www.freedesktop.org/wiki/Software/dbus/") + (dependencies meson ninja xz libglib libexpat) + (src (tar + (url "https://dbus.freedesktop.org/releases/dbus/dbus-1.16.2.tar.xz") + (dir "dbus-1.16.2") + (blake3 "b1d1f22858a8f04665e5dca29d194f892620f00fd3e3f4e89dd208e78868436e"))) + (build + (meson))) diff --git a/packages/libmnl.shrap b/packages/libmnl.shrap new file mode 100644 index 0000000..46cbd9c --- /dev/null +++ b/packages/libmnl.shrap @@ -0,0 +1,11 @@ +(package + (name "libmnl") + (version "1.0.5") + (homepage "https://www.netfilter.org/projects/libmnl/index.html") + (dependencies bzip2) + (src (tar + (url "https://www.netfilter.org/pub/libmnl/libmnl-1.0.5.tar.bz2") + (dir "libmnl-1.0.5") + (blake3 "bc4ab2439dba1a03954e554af39dd21ac96803870eec152f5d089659e3e5c142"))) + (build + (configure_make))) diff --git a/packages/libnftnl.shrap b/packages/libnftnl.shrap new file mode 100644 index 0000000..3569c3b --- /dev/null +++ b/packages/libnftnl.shrap @@ -0,0 +1,11 @@ +(package + (name "libnftnl") + (version "1.3.1") + (homepage "https://www.netfilter.org/projects/libnftnl/index.html") + (dependencies xz) + (src (tar + (url "https://www.netfilter.org/pub/libnftnl/libnftnl-1.3.1.tar.xz") + (dir "libnftnl-1.3.1") + (blake3 "ad4196d1382a8c05b14543864aa222a6921a027c61cc8c45f0ddc2e699d152e5"))) + (build + (configure_make))) diff --git a/packages/libopenssl.shrap b/packages/libopenssl.shrap index f8c6243..4805133 100644 --- a/packages/libopenssl.shrap +++ b/packages/libopenssl.shrap @@ -13,4 +13,6 @@ (do_install no)) (shell "make install_sw") (shell "cp -v /usr/lib/libssl.so.3 /lib/x86_64-linux-gnu/libssl.so.3 || true") - (shell "cp -v /usr/lib/libcrypto.so.3 /lib/x86_64-linux-gnu/libcrypto.so.3 || true"))) + (shell "cp -v /usr/lib/libcrypto.so.3 /lib/x86_64-linux-gnu/libcrypto.so.3 || true") + (shell "mkdir -p /usr/ssl") + (shell "cp -v apps/openssl.cnf /usr/ssl/ || true"))) diff --git a/packages/libsodium.shrap b/packages/libsodium.shrap index 3aaef64..3b92a2a 100644 --- a/packages/libsodium.shrap +++ b/packages/libsodium.shrap @@ -6,7 +6,7 @@ (src (tar (url "https://download.libsodium.org/libsodium/releases/libsodium-1.0.21-stable.tar.gz") (dir "libsodium-stable") - (blake3 "cba92d24061a7853a5735797e58165d5008f75de96a75ee2feea636e2e6e5762"))) + (blake3 "692280b35af0fdcbad4542c3cb96579c29d88775f987d9a759db129583fd23ff"))) (build (configure_make (configure_flags "--disable-shared")))) diff --git a/packages/ltrace.shrap b/packages/ltrace.shrap new file mode 100644 index 0000000..17df2ae --- /dev/null +++ b/packages/ltrace.shrap @@ -0,0 +1,12 @@ +(package + (name "ltrace") + (version "0.7.3") + (homepage "https://www.ltrace.org/") + (dependencies bzip2 elfutils) + (src (tar + (url "https://www.ltrace.org/ltrace_0.7.3.orig.tar.bz2") + (dir "ltrace-0.7.3") + (blake3 "c273df05560114dcd16ee68c56afd17d71482397a67035b0af3bc88e1dbdc2c6"))) + (build + (configure_make + (configure_flags "CFLAGS=\"-Wno-unused-local-typedefs -Wno-bool-compare -Wno-logical-not-parentheses -Wno-deprecated-declarations\"")))) diff --git a/packages/lxc.shrap b/packages/lxc.shrap new file mode 100644 index 0000000..8ae647b --- /dev/null +++ b/packages/lxc.shrap @@ -0,0 +1,12 @@ +(package + (name "lxc") + (version "6.0.5") + (homepage "https://linuxcontainers.org/lxc/") + (dependencies meson ninja pkg-config libdbus libcap-ng) + (src (tar + (url "https://linuxcontainers.org/downloads/lxc/lxc-6.0.5.tar.gz") + (dir "lxc-6.0.5") + (blake3 "a969f26cc06d444b0e109933711031b72652fdad36ee3f307c220bc17e9661bb"))) + (build + (meson + (configure_flags "-Dman=false -Dinit-script=sysvinit")))) diff --git a/packages/memcached.shrap b/packages/memcached.shrap new file mode 100644 index 0000000..a42ad61 --- /dev/null +++ b/packages/memcached.shrap @@ -0,0 +1,11 @@ +(package + (name "memcached") + (version "1.6.40") + (homepage "https://memcached.org/") + (dependencies libevent) + (src (tar + (url "https://memcached.org/files/memcached-1.6.40.tar.gz") + (dir "memcached-1.6.40") + (blake3 "60bc019d35c880e37d64c5630453ee03084604a9b9b7425543ea41337ca5fe08"))) + (build + (configure_make))) diff --git a/packages/postfix.shrap b/packages/postfix.shrap new file mode 100644 index 0000000..fb92994 --- /dev/null +++ b/packages/postfix.shrap @@ -0,0 +1,16 @@ +(package + (name "postfix") + (version "3.10.8") + (homepage "https://www.postfix.org/") + (dependencies libdb m4) + (src (tar + (url "https://ftp.fu-berlin.de/unix/mail/postfix/official/postfix-3.10.8.tar.gz") + (dir "postfix-3.10.8") + (blake3 "c6bddf0bfbf0a2164f0f9ab9018f4922ebc67ef4cc55bd21014d7852ddf9417d"))) + (build + (shell "groupadd postfix || true") + (shell "groupadd postdrop || true") + (shell "useradd -g postfix -s /bin/false -d /no/where postfix || true") + (shell "make makefiles CCARGS=-DNO_NIS") + (make + (install_flags "install_root=/ non_interactive=yes config_directory=/etc/postfix daemon_directory=/usr/libexec/postfix command_directory=/usr/sbin queue_directory=/var/spool/postfix data_directory=/var/lib/postfix")))) diff --git a/packages/redis.shrap b/packages/redis.shrap new file mode 100644 index 0000000..379afa4 --- /dev/null +++ b/packages/redis.shrap @@ -0,0 +1,12 @@ +(package + (name "redis") + (version "8.6.0") + (homepage "https://redis.io/") + (dependencies make pkg-config libopenssl) + (src (tar + (url "https://github.com/redis/redis/archive/refs/tags/8.6.0.tar.gz") + (dir "redis-8.6.0") + (blake3 "8adcb54b740309e4d92f333995e27ea285affe336db849d328113d6111eee8ca"))) + (build + (make + (make_flags "BUILD_TLS=yes")))) diff --git a/src/main.cc b/src/main.cc index 48e456d..55915c5 100644 --- a/src/main.cc +++ b/src/main.cc @@ -202,8 +202,9 @@ void install_package(const std::string &name, DB &db) { } catch (std::out_of_range &) { } - Util::shell_command( - "meson setup --prefix=/usr builddir " + configure_flags, src_path); + Util::shell_command("meson setup --prefix=/usr --libdir=lib builddir " + + configure_flags, + src_path); Util::shell_command("meson compile -C builddir -j" + jobs, src_path); Util::shell_command("meson install -C builddir", src_path); } else if (step_type == "shell") {