12 Commits

Author SHA256 Message Date
cb441e3947 Accepting request 1313156 from devel:microos
OBS-URL: https://build.opensuse.org/request/show/1313156
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/busybox-links?expand=0&rev=41
2025-10-24 15:22:52 +00:00
3a1b5611b2 - Add conflicts of busybox-misc to ascii
I am planning to submit ESR's ascii which contains /usr/bin/ascii

OBS-URL: https://build.opensuse.org/package/show/devel:microos/busybox-links?expand=0&rev=39
2025-10-23 07:25:31 +00:00
5aa89923ed Accepting request 1310561 from devel:microos
OBS-URL: https://build.opensuse.org/request/show/1310561
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/busybox-links?expand=0&rev=40
2025-10-11 20:48:25 +00:00
8ae4c5b858 - Remove ether-wake from busybox-net-tools: it's packaged in its
own subpackage busybox-ether-wake.

OBS-URL: https://build.opensuse.org/package/show/devel:microos/busybox-links?expand=0&rev=37
2025-10-10 11:05:04 +00:00
9392f0a9e6 Accepting request 1306472 from devel:microos
- Provide support for bridge-utils-dummy (bsc#1242048). (forwarded request 1304161 from sbrabec)

OBS-URL: https://build.opensuse.org/request/show/1306472
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/busybox-links?expand=0&rev=39
2025-09-23 14:06:02 +00:00
13bcb61eda - Provide support for bridge-utils-dummy (bsc#1242048).
OBS-URL: https://build.opensuse.org/package/show/devel:microos/busybox-links?expand=0&rev=35
2025-09-22 10:36:55 +00:00
45693b2bb0 Accepting request 1302740 from devel:microos
OBS-URL: https://build.opensuse.org/request/show/1302740
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/busybox-links?expand=0&rev=38
2025-09-05 19:42:20 +00:00
ef624b51b5 - Set net-tools conflict version properly.
OBS-URL: https://build.opensuse.org/package/show/devel:microos/busybox-links?expand=0&rev=33
2025-09-04 12:25:22 +00:00
8f237c5b83 Accepting request 1302568 from devel:microos
OBS-URL: https://build.opensuse.org/request/show/1302568
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/busybox-links?expand=0&rev=37
2025-09-03 19:07:30 +00:00
3658069a33 - Add busybox-ether-wake replacing downstream ether-wake from
net-tools (boo#1249034).
- Provide support for net-tools-dummy-ether-wake (bsc#1242048).

OBS-URL: https://build.opensuse.org/package/show/devel:microos/busybox-links?expand=0&rev=31
2025-09-03 10:59:49 +00:00
9f6fa72738 Accepting request 1297418 from devel:microos
OBS-URL: https://build.opensuse.org/request/show/1297418
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/busybox-links?expand=0&rev=36
2025-08-06 12:31:09 +00:00
f76d74f2ef - fix generation of file lists via Dockerfile
- add copy of busybox.links from the container to catch changes
  to busybox config

OBS-URL: https://build.opensuse.org/package/show/devel:microos/busybox-links?expand=0&rev=29
2025-08-04 07:51:18 +00:00
9 changed files with 408 additions and 34 deletions

View File

@@ -5,4 +5,4 @@ WORKDIR /rpm/
COPY create-filelists.sh .
RUN ./create-filelists.sh
RUN bash ./create-filelists.sh

View File

@@ -1,3 +1,38 @@
-------------------------------------------------------------------
Sun Oct 12 19:31:16 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>
- Add conflicts of busybox-misc to ascii
-------------------------------------------------------------------
Fri Oct 10 07:07:26 UTC 2025 - Dominique Leuenberger <dimstar@opensuse.org>
- Remove ether-wake from busybox-net-tools: it's packaged in its
own subpackage busybox-ether-wake.
-------------------------------------------------------------------
Thu Sep 11 00:19:06 UTC 2025 - Stanislav Brabec <sbrabec@suse.com>
- Provide support for bridge-utils-dummy (bsc#1242048).
-------------------------------------------------------------------
Thu Sep 4 11:56:15 UTC 2025 - Stanislav Brabec <sbrabec@suse.com>
- Set net-tools conflict version properly.
-------------------------------------------------------------------
Mon Sep 1 17:42:59 UTC 2025 - Stanislav Brabec <sbrabec@suse.com>
- Add busybox-ether-wake replacing downstream ether-wake from
net-tools (boo#1249034).
- Provide support for net-tools-dummy-ether-wake (bsc#1242048).
-------------------------------------------------------------------
Fri Aug 1 14:57:55 UTC 2025 - Radoslav Kolev <radoslav.kolev@suse.com>
- fix generation of file lists via Dockerfile
- add copy of busybox.links from the container to catch changes
to busybox config
-------------------------------------------------------------------
Thu Jul 17 06:00:41 UTC 2025 - Radoslav Kolev <radoslav.kolev@suse.com>

View File

@@ -1,7 +1,7 @@
#
# spec file for package busybox-links
#
# Copyright (c) 2025 SUSE LLC
# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -80,11 +80,22 @@ Source55: filelist-which.txt
Source56: filelist-whois.txt
Source57: filelist-xz.txt
Source58: filelist-udhcpc.txt
Source59: filelist-ether-wake.txt
# used for creating the above filelists and busybox.install:
# build the container locally and then copy filelist-*txt and busybox.install
# out ouf WORKDIR into the package directory
# build the container locally and then copy /rpm/filelist-*txt,
# /rpm/busybox.install # and /usr/share/busybox/busybox.links
# from the container into the package directory
# I used the following commands:
# podman build -f Dockerfile -t busybox-links-filelists"
# podman run -it localhost/busybox-links-filelists
# verify files look OK inside the container, then copy files
# to the package directory
Source98: create-filelists.sh
Source99: Dockerfile
#we include the busybox.links from the busybox package in the
#container where the create-filelists.sh script was called
#so we can compare as a sanity chech there are no changes
Source100: busybox.links
BuildRequires: busybox
Requires: busybox = %{version}
Requires: busybox-adduser = %{version}
@@ -97,6 +108,7 @@ Requires: busybox-cpio = %{version}
Requires: busybox-diffutils = %{version}
Requires: busybox-dos2unix = %{version}
Requires: busybox-ed = %{version}
Requires: busybox-ether-wake = %{version}
Requires: busybox-findutils = %{version}
Requires: busybox-gawk = %{version}
Requires: busybox-grep = %{version}
@@ -147,6 +159,7 @@ This is a meta package requireing all packages providing busybox applets.
%package -n busybox-misc
Summary: Busybox applets not fitting anywhere else
Requires: busybox = %{version}
Conflicts: ascii
Conflicts: binutils
Conflicts: blog
Conflicts: dosfstools
@@ -208,6 +221,16 @@ Conflicts: diffutils
%description -n busybox-diffutils
This package contains the symlinks to replace diffutils with busybox.
%package -n busybox-ether-wake
Summary: Busybox applets replacing ether-wake
Requires: busybox = %{version}
Conflicts: net-tools < 2.10+1
Obsoletes: net-tools-dummy-ether-wake
%description -n busybox-ether-wake
This package contains the symlink to replace ether-wake from older
downstream versions of net-tools with busybox.
%package -n busybox-findutils
Summary: Busybox applets replacing findutils
Requires: busybox = %{version}
@@ -241,6 +264,7 @@ Requires: busybox = %{version}
Conflicts: bridge-utils
Conflicts: iproute2
Conflicts: wicked-service
Obsoletes: bridge-utils-dummy
%description -n busybox-iproute2
This package contains the symlinks to replace iproute2 with busybox.
@@ -396,6 +420,7 @@ Summary: Busybox applets replacing net-tools
Requires: busybox = %{version}
Conflicts: net-tools
Conflicts: net-tools-deprecated
Obsoletes: net-tools-dummy
%description -n busybox-net-tools
This package contains the symlinks to replace net-tools with busybox.
@@ -613,17 +638,13 @@ cp %{_sourcedir}/filelist*.txt .
%if 0%{?suse_version} < 1550
echo "/bin/sh" >> filelist-sh.txt
%endif
cat filelist-*.txt | sort -u > filelist.txt
diff %{SOURCE100} %{_datadir}/busybox/busybox.links
%install
bash %{_sourcedir}/busybox.install %{buildroot} --symlinks
rm %{buildroot}/bin/busybox %{buildroot}%{_bindir}/[[
# Move files to correct directories
mv %{buildroot}%{_sbindir}/{arping,chroot,ifconfig,route,setfont,setlogcons} %{buildroot}%{_bindir}/
mv %{buildroot}%{_bindir}/{traceroute,traceroute6} %{buildroot}%{_sbindir}/
ln -sf %{_sbindir}/lsmod %{buildroot}%{_bindir}/lsmod
ln -sf %{_sbindir}/ip %{buildroot}%{_bindir}/ip
ln -sf %{_sbindir}/sestatus %{buildroot}%{_bindir}/sestatus
ln -sf %{_bindir}/busybox %{buildroot}%{_bindir}/sh
rm %{buildroot}%{_bindir}/busybox
%if 0%{?suse_version} < 1550
ln -sf %{_bindir}/sh %{buildroot}/bin/sh
%endif
@@ -653,6 +674,8 @@ install -m 755 %{SOURCE3} %{buildroot}%{_bindir}/zgrep
%files -n busybox-ed -f filelist-ed.txt
%files -n busybox-ether-wake -f filelist-ether-wake.txt
%files -n busybox-findutils -f filelist-findutils.txt
%files -n busybox-gawk -f filelist-gawk.txt

View File

@@ -15,11 +15,7 @@ shift # Keep only remaining options
# Source the configuration
#. ./.config
#this is a placeholder, it will be replaced with correct list by create-filelists.sh
#when building the busybox-links package
IGNORE_APPLETS="halt poweroff reboot"
h=`sort /usr/share/busybox/busybox.links | uniq | grep -vE "${IGNORE_APPLETS// /|}"`
h=`sort filelist.txt | uniq`
sharedlib_dir="0_lib"
@@ -64,8 +60,8 @@ if [ -n "$DO_INSTALL_LIBS" ] && [ x"$DO_INSTALL_LIBS" != x"n" ]; then
done
fi
if [ x"$cleanup" = x"1" ] && [ -e "$prefix/bin/busybox" ]; then
inode=`ls -i "$prefix/bin/busybox" | awk '{print $1}'`
if [ x"$cleanup" = x"1" ] && [ -e "$prefix/usr/bin/busybox" ]; then
inode=`ls -i "$prefix/usr/bin/busybox" | awk '{print $1}'`
sub_shell_it=`
cd "$prefix"
for d in usr/sbin usr/bin sbin bin; do
@@ -80,9 +76,9 @@ if [ x"$cleanup" = x"1" ] && [ -e "$prefix/bin/busybox" ]; then
exit 0
fi
rm -f "$prefix/bin/busybox" || exit 1
mkdir -p "$prefix/bin" || exit 1
install -m 755 /usr/bin/busybox "$prefix/bin/busybox" || exit 1
rm -f "$prefix/usr/bin/busybox" || exit 1
mkdir -p "$prefix/usr/bin" || exit 1
install -m 755 /usr/bin/busybox "$prefix/usr/bin/busybox" || exit 1
for i in $h; do
appdir=`dirname "$i"`
@@ -97,7 +93,7 @@ for i in $h; do
ln $linkopts busybox "$prefix/$i" || exit 1
else
rm -f "$prefix/$i"
echo "#!/bin/busybox" >"$prefix/$i"
echo "../usr/bin/busybox" >"$prefix/$i"
chmod +x "$prefix/$i"
fi
echo " $prefix/$i"
@@ -112,16 +108,19 @@ for i in $h; do
fi
else
if [ x"$linkopts" = x"-f" ]; then
bb_path="$prefix/bin/busybox"
bb_path="$prefix/usr/bin/busybox"
else
case "$appdir" in
/)
bb_path="usr/bin/busybox"
bb_path="../usr/bin/busybox"
;;
/bin | /usr/bin)
bb_path="../bin/busybox"
/bin)
bb_path="../usr/bin/busybox"
;;
/sbin | /usr/sbin)
/sbin)
bb_path="../usr/bin/busybox"
;;
/usr/bin | /usr/sbin)
bb_path="../bin/busybox"
;;
*)

301
busybox.links Normal file
View File

@@ -0,0 +1,301 @@
/usr/bin/ar
/usr/bin/uncompress
/usr/bin/gunzip
/usr/bin/zcat
/usr/bin/bunzip2
/usr/bin/bzcat
/usr/bin/unlzma
/usr/bin/lzcat
/usr/bin/lzma
/usr/bin/unxz
/usr/bin/xzcat
/usr/bin/xz
/usr/bin/bzip2
/usr/bin/cpio
/usr/bin/gzip
/usr/bin/lzop
/usr/bin/tar
/usr/bin/unzip
/usr/bin/chvt
/usr/bin/clear
/usr/bin/deallocvt
/usr/sbin/loadfont
/usr/sbin/setfont
/usr/sbin/loadkmap
/usr/bin/openvt
/usr/bin/reset
/usr/bin/resize
/usr/sbin/setconsole
/usr/bin/setkeycodes
/usr/sbin/setlogcons
/usr/bin/showkey
/usr/bin/basename
/usr/bin/cat
/usr/bin/chgrp
/usr/bin/chmod
/usr/bin/chown
/usr/sbin/chroot
/usr/bin/cksum
/usr/bin/comm
/usr/bin/cp
/usr/bin/cut
/usr/bin/date
/usr/bin/dd
/usr/bin/df
/usr/bin/dirname
/usr/bin/dos2unix
/usr/bin/unix2dos
/usr/bin/du
/usr/bin/echo
/usr/bin/env
/usr/bin/expand
/usr/bin/unexpand
/usr/bin/expr
/usr/bin/factor
/usr/bin/false
/usr/bin/fold
/usr/bin/head
/usr/bin/hostid
/usr/bin/groups
/usr/bin/id
/usr/bin/install
/usr/bin/link
/usr/bin/ln
/usr/bin/logname
/usr/bin/ls
/usr/bin/md5sum
/usr/bin/sha1sum
/usr/bin/sha3sum
/usr/bin/sha256sum
/usr/bin/sha512sum
/usr/bin/mkdir
/usr/bin/mkfifo
/usr/bin/mknod
/usr/bin/mktemp
/usr/bin/mv
/usr/bin/nice
/usr/bin/nl
/usr/bin/nohup
/usr/bin/nproc
/usr/bin/od
/usr/bin/paste
/usr/bin/printenv
/usr/bin/printf
/usr/bin/pwd
/usr/bin/readlink
/usr/bin/realpath
/usr/bin/rm
/usr/bin/rmdir
/usr/bin/seq
/usr/bin/shred
/usr/bin/shuf
/usr/bin/sleep
/usr/bin/sort
/usr/bin/split
/usr/bin/stat
/usr/bin/stty
/usr/bin/sum
/usr/bin/sync
/usr/bin/fsync
/usr/bin/tac
/usr/bin/tail
/usr/bin/tee
/usr/bin/test
/usr/bin/[
/usr/bin/[[
/usr/bin/timeout
/usr/bin/touch
/usr/bin/tr
/usr/bin/true
/usr/bin/truncate
/usr/bin/tsort
/usr/bin/tty
/usr/bin/uname
/usr/bin/arch
/usr/bin/uniq
/usr/bin/unlink
/usr/bin/usleep
/usr/bin/uudecode
/usr/bin/base32
/usr/bin/base64
/usr/bin/uuencode
/usr/bin/wc
/usr/bin/users
/usr/bin/w
/usr/bin/who
/usr/bin/whoami
/usr/bin/yes
/usr/bin/which
/usr/bin/chattr
/usr/sbin/fsck
/usr/bin/lsattr
/usr/bin/awk
/usr/bin/cmp
/usr/bin/diff
/usr/bin/ed
/usr/bin/patch
/usr/bin/sed
/usr/bin/vi
/usr/bin/find
/usr/bin/grep
/usr/bin/egrep
/usr/bin/fgrep
/usr/bin/xargs
/usr/sbin/halt
/usr/sbin/poweroff
/usr/sbin/reboot
/usr/sbin/addgroup
/usr/sbin/adduser
/usr/sbin/chpasswd
/usr/bin/cryptpw
/usr/bin/mkpasswd
/usr/sbin/deluser
/usr/sbin/delgroup
/usr/bin/login
/usr/bin/passwd
/usr/bin/su
/usr/sbin/sulogin
/usr/bin/vlock
/usr/sbin/sendmail
/usr/bin/ascii
/usr/bin/bc
/usr/bin/beep
/usr/bin/getfattr
/usr/bin/hexedit
/usr/bin/less
/usr/bin/lsscsi
/usr/bin/man
/usr/sbin/seedrng
/usr/bin/setfattr
/usr/bin/strings
/usr/bin/time
/usr/bin/tree
/usr/bin/ttysize
/usr/sbin/depmod
/usr/sbin/insmod
/usr/sbin/lsmod
/usr/sbin/modinfo
/usr/sbin/modprobe
/usr/sbin/rmmod
/usr/sbin/arp
/usr/sbin/arping
/usr/sbin/brctl
/usr/sbin/ether-wake
/usr/bin/dnsdomainname
/usr/bin/hostname
/usr/sbin/ifconfig
/usr/sbin/ifenslave
/usr/sbin/ifup
/usr/sbin/ifdown
/usr/sbin/ip
/usr/sbin/ipaddr
/usr/sbin/iplink
/usr/sbin/iproute
/usr/sbin/iprule
/usr/sbin/iptunnel
/usr/sbin/ipneigh
/usr/sbin/nameif
/usr/sbin/nbd-client
/usr/bin/nc
/usr/bin/netstat
/usr/bin/nslookup
/usr/bin/ping
/usr/bin/ping6
/usr/bin/pscan
/usr/sbin/route
/usr/sbin/slattach
/usr/bin/ssl_client
/usr/sbin/tc
/usr/bin/telnet
/usr/bin/tftp
/usr/bin/traceroute
/usr/bin/traceroute6
/usr/sbin/tunctl
/usr/sbin/vconfig
/usr/bin/wget
/usr/bin/whois
/usr/sbin/zcip
/usr/bin/free
/usr/bin/fuser
/usr/bin/iostat
/usr/bin/kill
/usr/bin/killall
/usr/sbin/killall5
/usr/bin/lsof
/usr/bin/mpstat
/usr/bin/nmeter
/usr/bin/pgrep
/usr/bin/pkill
/usr/bin/pidof
/usr/bin/pmap
/usr/bin/ps
/usr/bin/pstree
/usr/bin/pwdx
/usr/bin/smemcap
/usr/sbin/sysctl
/usr/bin/top
/usr/bin/uptime
/usr/bin/watch
/usr/bin/envdir
/usr/bin/chcon
/usr/sbin/getenforce
/usr/sbin/getsebool
/usr/sbin/load_policy
/usr/sbin/matchpathcon
/usr/bin/runcon
/usr/sbin/selinuxenabled
/usr/sbin/sestatus
/usr/sbin/setenforce
/usr/sbin/setfiles
/usr/sbin/restorecon
/usr/sbin/setsebool
/usr/bin/ash
/usr/bin/sh
/usr/bin/hush
/usr/bin/logger
/usr/sbin/syslogd
/usr/sbin/blkid
/usr/bin/cal
/usr/bin/dmesg
/usr/bin/fallocate
/usr/bin/fatattr
/usr/sbin/fdisk
/usr/sbin/findfs
/usr/bin/flock
/usr/bin/getopt
/usr/bin/hexdump
/usr/bin/xxd
/usr/bin/ipcrm
/usr/bin/ipcs
/usr/bin/last
/usr/sbin/losetup
/usr/bin/lspci
/usr/bin/lsusb
/usr/sbin/mdev
/usr/bin/mesg
/usr/sbin/mke2fs
/usr/sbin/mkfs.ext2
/usr/sbin/mkdosfs
/usr/sbin/mkfs.vfat
/usr/sbin/mkswap
/usr/bin/more
/usr/bin/mount
/usr/bin/mountpoint
/usr/sbin/nologin
/usr/bin/nsenter
/usr/bin/renice
/usr/bin/rev
/usr/bin/script
/usr/bin/scriptreplay
/usr/bin/setarch
/usr/bin/linux32
/usr/bin/linux64
/usr/bin/setpriv
/usr/bin/setsid
/usr/sbin/switch_root
/usr/sbin/uevent
/usr/bin/umount
/usr/bin/unshare
/usr/bin/wall
/usr/sbin/udhcpc6
/usr/sbin/udhcpc

View File

@@ -39,9 +39,26 @@ BINDIR=$(rpm -E %_bindir)
SBINDIR=$(rpm -E %{_sbindir})
DATADIR=$(rpm -E %{_datadir})
#users, who, uptime are now part of coreutils-systemd,
#so add them manually to busybox-coreutils for now
echo -e "$BINDIR/uptime" >> filelist-coreutils.txt
touch used/uptime
echo -e "$BINDIR/users" >> filelist-coreutils.txt
touch used/users
echo -e "$BINDIR/who" >> filelist-coreutils.txt
touch used/who
#udhcpc subpackage
echo -e "$SBINDIR/udhcpc" >> filelist-udhcpc.txt
touch used/udhcpc
echo -e "$SBINDIR/udhcpc6" >> filelist-udhcpc.txt
touch used/udhcpc6
# Merge net-tools sub-packages
cat filelist-net-tools-deprecated.txt >> filelist-net-tools.txt
rm filelist-net-tools-deprecated.txt
# ether-wake was dropped from net-tools
echo -e "$SBINDIR/ether-wake" >> filelist-ether-wake.txt
touch used/ether-wake
# Create some extra sub-packages
echo -e "$BINDIR/ash" > filelist-sh.txt
touch used/ash
@@ -50,6 +67,7 @@ touch used/hush
echo -e "$BINDIR/sh" >> filelist-sh.txt
touch used/sh
echo -e "$SBINDIR/loadfont" >> filelist-kbd.txt
echo -e "$SBINDIR/loadkmap" >> filelist-kbd.txt
touch used/loadkmap used/loadfont
echo -e "/usr/sbin/addgroup\n/usr/sbin/adduser\n/usr/sbin/delgroup\n/usr/sbin/deluser" >> filelist-shadow.txt
@@ -87,5 +105,3 @@ sed -e 's|$prefix/bin/busybox|$prefix/usr/bin/busybox|g' \
-e 's|"../../bin/busybox"|"../bin/busybox"|g' \
-e "s|$DATADIR/busybox/busybox.links|filelist.txt|g" \
$BINDIR/busybox.install > busybox.install
cat filelist-*.txt | sort -u > filelist.txt

View File

@@ -82,9 +82,9 @@
/usr/bin/unexpand
/usr/bin/uniq
/usr/bin/unlink
/usr/bin/uptime
/usr/bin/users
/usr/bin/wc
/usr/bin/who
/usr/bin/whoami
/usr/bin/yes
/usr/bin/uptime
/usr/bin/users
/usr/bin/who

1
filelist-ether-wake.txt Normal file
View File

@@ -0,0 +1 @@
/usr/sbin/ether-wake

View File

@@ -1,4 +1,3 @@
/usr/sbin/ether-wake
/usr/sbin/nameif
/usr/sbin/slattach
/usr/bin/ifconfig