Skip to content

Commit 6c7aee3

Browse files
committed
New container: neofetch
Signed-off-by: Joachim Wiberg <[email protected]>
1 parent d66a03a commit 6c7aee3

File tree

5 files changed

+126
-5
lines changed

5 files changed

+126
-5
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
contents: write
1616
strategy:
1717
matrix:
18-
app: [system, httpd, ntpd, nftables]
18+
app: [system, httpd, ntpd, nftables, neofetch]
1919
uses: ./.github/workflows/build-push.yml
2020
with:
2121
app: ${{ matrix.app }}

README.md

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,8 @@ functionality.
3232
3333
---
3434

35-
*curiOS is brought to you by the [same team][8] that created and
36-
maintains the [Infix operating system][7]. If you like the idea of
35+
*curiOS is brought to you by the [same team][9] that created and
36+
maintains the [Infix operating system][8]. If you like the idea of
3737
modeling an entire OS with YANG, check out Infix!*
3838

3939
## Ready-to-Use Images
@@ -109,6 +109,26 @@ docker run -p 8080:8080 ghcr.io/kernelkit/curios-httpd /usr/sbin/httpd -f -v -p
109109

110110
For more help, see the [BusyBox docs](https://busybox.net/downloads/BusyBox.html#httpd)
111111

112+
### [curiOS neofetch][7] 🖼️
113+
114+
**System information at a glance** (~750KB) - Perfect for demos, system
115+
monitoring, and showing off your container infrastructure. Features:
116+
117+
- **Beautiful ASCII art** - Eye-catching system logos and information display
118+
- **Comprehensive details** - OS, kernel, uptime, memory, CPU, and more
119+
- **Container-optimized** - Shows host system info even when containerized
120+
- **Demo-ready** - Perfect for presentations and system showcases
121+
122+
**Example usage:**
123+
124+
```bash
125+
# Simple system info display
126+
docker run --rm ghcr.io/kernelkit/curios-neofetch
127+
128+
# With host system access for accurate info
129+
docker run --rm -v /etc/os-release:/etc/os-release:ro ghcr.io/kernelkit/curios-neofetch
130+
```
131+
112132
## Origin & References
113133

114134
curiOS is a wrapper around [Buildroot][0] for creating container images for
@@ -126,6 +146,7 @@ curiOS is a fork of <https://github.com/brianredbeard/coreos_buildroot>
126146
[4]: https://github.com/orgs/kernelkit/packages/container/package/curios-ntpd
127147
[5]: https://github.com/orgs/kernelkit/packages/container/package/curios-nftables
128148
[6]: https://github.com/orgs/kernelkit/packages/container/package/curios-httpd
129-
[7]: https://github.com/kernelkit/infix
130-
[8]: https://kernelkit.org
149+
[7]: https://github.com/orgs/kernelkit/packages/container/package/curios-neofetch
150+
[8]: https://github.com/kernelkit/infix
151+
[9]: https://kernelkit.org
131152
[10]: https://www.ntp.org/documentation/4.2.8-series/discover/

board/neofetch/busybox_defconfig

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
#
2+
# Minimal BusyBox configuration for neofetch
3+
# Only includes essential applets needed for neofetch to function
4+
#
5+
CONFIG_HAVE_DOT_CONFIG=y
6+
7+
#
8+
# Settings
9+
#
10+
CONFIG_LONG_OPTS=y
11+
CONFIG_BUSYBOX=y
12+
CONFIG_FEATURE_INSTALLER=y
13+
CONFIG_STATIC=y
14+
15+
#
16+
# Shell - Required for neofetch script execution
17+
#
18+
CONFIG_ASH=y
19+
CONFIG_ASH_OPTIMIZE_FOR_SIZE=y
20+
CONFIG_SH_IS_ASH=y
21+
CONFIG_BASH_IS_NONE=y
22+
23+
#
24+
# Essential utilities for neofetch system information gathering
25+
#
26+
CONFIG_UNAME=y # Kernel/system info
27+
CONFIG_CAT=y # Read files from /proc, /sys
28+
CONFIG_GREP=y # Pattern matching
29+
CONFIG_CUT=y # Field extraction
30+
CONFIG_AWK=y # Text processing
31+
CONFIG_SED=y # Text processing
32+
CONFIG_HEAD=y # File content
33+
CONFIG_TR=y # Character translation
34+
CONFIG_PRINTF=y # Output formatting
35+
CONFIG_PS=y # Process information
36+
CONFIG_READLINK=y # Link resolution
37+
CONFIG_BASENAME=y # Path manipulation
38+
CONFIG_DIRNAME=y # Path manipulation
39+
40+
#
41+
# Disable all non-essential applets
42+
#
43+
# CONFIG_DESKTOP is not set
44+
# CONFIG_EXTRA_COMPAT is not set
45+
# CONFIG_INCLUDE_SUSv2 is not set
46+
# CONFIG_SHOW_USAGE is not set
47+
# CONFIG_FEATURE_VERBOSE_USAGE is not set
48+
# CONFIG_LFS is not set
49+
# CONFIG_PAM is not set
50+
51+
# All network utilities disabled
52+
# All text editors disabled
53+
# All system services disabled
54+
# All archive utilities disabled
55+
# All filesystem utilities disabled (except basic file ops)

configs/neofetch_amd64_defconfig

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
BR2_x86_64=y
2+
BR2_TOOLCHAIN_EXTERNAL=y
3+
BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_UCLIBC_STABLE=y
4+
BR2_DL_DIR="${BR2_EXTERNAL_CURIOS_PATH}/dl"
5+
BR2_CCACHE=y
6+
BR2_CCACHE_DIR="${BR2_EXTERNAL_CURIOS_PATH}/.ccache"
7+
BR2_STATIC_LIBS=y
8+
BR2_TARGET_GENERIC_HOSTNAME="curiOS"
9+
BR2_TARGET_GENERIC_ISSUE="Welcome to curiOS"
10+
BR2_INIT_NONE=y
11+
# BR2_TARGET_GENERIC_GETTY is not set
12+
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
13+
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_CURIOS_PATH)/board/common/post-build.sh"
14+
BR2_PACKAGE_BUSYBOX_CONFIG="${BR2_EXTERNAL_CURIOS_PATH}/board/neofetch/busybox_defconfig"
15+
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
16+
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
17+
BR2_PACKAGE_NEOFETCH=y
18+
BR2_TARGET_ROOTFS_OCI=y
19+
BR2_TARGET_ROOTFS_OCI_AUTHOR="curiOS"
20+
BR2_TARGET_ROOTFS_OCI_TAG="edge"
21+
BR2_TARGET_ROOTFS_OCI_ENTRYPOINT="/usr/bin/neofetch"
22+
BR2_TARGET_ROOTFS_OCI_LABELS=".url=https://github.com/kernelkit/curiOS .title=curiOS-neofetch"

configs/neofetch_arm64_defconfig

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
BR2_aarch64=y
2+
BR2_TOOLCHAIN_EXTERNAL=y
3+
BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y
4+
BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_UCLIBC_STABLE=y
5+
BR2_DL_DIR="${BR2_EXTERNAL_CURIOS_PATH}/dl"
6+
BR2_CCACHE=y
7+
BR2_CCACHE_DIR="${BR2_EXTERNAL_CURIOS_PATH}/.ccache"
8+
BR2_STATIC_LIBS=y
9+
BR2_TARGET_GENERIC_HOSTNAME="curiOS"
10+
BR2_TARGET_GENERIC_ISSUE="Welcome to curiOS"
11+
BR2_INIT_NONE=y
12+
# BR2_TARGET_GENERIC_GETTY is not set
13+
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
14+
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_CURIOS_PATH)/board/common/post-build.sh"
15+
BR2_PACKAGE_BUSYBOX_CONFIG="${BR2_EXTERNAL_CURIOS_PATH}/board/neofetch/busybox_defconfig"
16+
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
17+
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
18+
BR2_PACKAGE_NEOFETCH=y
19+
BR2_TARGET_ROOTFS_OCI=y
20+
BR2_TARGET_ROOTFS_OCI_AUTHOR="curiOS"
21+
BR2_TARGET_ROOTFS_OCI_TAG="edge"
22+
BR2_TARGET_ROOTFS_OCI_ENTRYPOINT="/usr/bin/neofetch"
23+
BR2_TARGET_ROOTFS_OCI_LABELS=".url=https://github.com/kernelkit/curiOS .title=curiOS-neofetch"

0 commit comments

Comments
 (0)