commit e7568183bacab5e7a1ef9a785558cc3a60684148 Author: CapCreeperGR Date: Thu Jul 4 15:05:04 2024 +0300 Initial Commit diff --git a/pkg.info b/pkg.info new file mode 100644 index 0000000..47e58d2 --- /dev/null +++ b/pkg.info @@ -0,0 +1,5 @@ +name: filesystem +description: The Tide Linux filesystem +version: 1.0 +architecture: any +type: source diff --git a/source-files/group b/source-files/group new file mode 100644 index 0000000..9fa8175 --- /dev/null +++ b/source-files/group @@ -0,0 +1,33 @@ +root:x:0: +bin:x:1:daemon +sys:x:2: +kmem:x:3: +tape:x:4: +tty:x:5: +daemon:x:6: +floppy:x:7: +disk:x:8: +lp:x:9: +dialout:x:10: +audio:x:11: +video:x:12: +utmp:x:13: +cdrom:x:15: +adm:x:16: +messagebus:x:18: +systemd-journal:x:23: +input:x:24: +mail:x:34: +kvm:x:61: +systemd-journal-gateway:x:73: +systemd-journal-remote:x:74: +systemd-journal-upload:x:75: +systemd-network:x:76: +systemd-resolve:x:77: +systemd-timesync:x:78: +systemd-coredump:x:79: +uuidd:x:80: +systemd-oom:x:81: +wheel:x:97: +users:x:999: +nogroup:x:65534: diff --git a/source-files/gshadow b/source-files/gshadow new file mode 100644 index 0000000..1832782 --- /dev/null +++ b/source-files/gshadow @@ -0,0 +1,33 @@ +root:x:: +bin:x::daemon +sys:x:: +kmem:x:: +tape:x:: +tty:x:: +daemon:x:: +floppy:x:: +disk:x:: +lp:x:: +dialout:x:: +audio:x:: +video:x:: +utmp:x:: +cdrom:x:: +adm:x:: +messagebus:x:: +systemd-journal:x:: +input:x:: +mail:x:: +kvm:x:: +systemd-journal-gateway:x:: +systemd-journal-remote:x:: +systemd-journal-upload:x:: +systemd-network:x:: +systemd-resolve:x:: +systemd-timesync:x:: +systemd-coredump:x:: +uuidd:x:: +systemd-oom:x:: +wheel:x:: +users:x:: +nogroup:x:: diff --git a/source-files/hosts b/source-files/hosts new file mode 100644 index 0000000..7c6d3fe --- /dev/null +++ b/source-files/hosts @@ -0,0 +1,2 @@ +127.0.0.1 localhost +::1 localhost diff --git a/source-files/lsb-release b/source-files/lsb-release new file mode 100644 index 0000000..9ad80d1 --- /dev/null +++ b/source-files/lsb-release @@ -0,0 +1,3 @@ +DISTRIB_ID="TideLinux" +DISTRIB_RELEASE="0.2" +DISTRIB_DESCRIPTION="Tide Linux 0.2 (Alpha)" diff --git a/source-files/nsswitch.conf b/source-files/nsswitch.conf new file mode 100644 index 0000000..55134a7 --- /dev/null +++ b/source-files/nsswitch.conf @@ -0,0 +1,11 @@ +passwd: files systemd +group: files systemd +shadow: files systemd + +hosts: mymachines resolve [!UNAVAIL=return] files myhostname dns +networks: files + +protocols: files +services: files +ethers: files +rpc: files diff --git a/source-files/os-release b/source-files/os-release new file mode 100644 index 0000000..98310d0 --- /dev/null +++ b/source-files/os-release @@ -0,0 +1,4 @@ +PRETTY_NAME="Tide Linux 0.2 (Alpha)" +NAME="Tide Linux" +VERSION="0.2" +ID=tide diff --git a/source-files/passwd b/source-files/passwd new file mode 100644 index 0000000..f57e249 --- /dev/null +++ b/source-files/passwd @@ -0,0 +1,14 @@ +root:x:0:0:root:/root:/bin/bash +bin:x:1:1:bin:/dev/null:/usr/bin/false +daemon:x:6:6:Daemon User:/dev/null:/usr/bin/false +messagebus:x:18:18:D-Bus Message Daemon User:/run/dbus:/usr/bin/false +systemd-journal-gateway:x:73:73:systemd Journal Gateway:/:/usr/bin/false +systemd-journal-remote:x:74:74:systemd Journal Remote:/:/usr/bin/false +systemd-journal-upload:x:75:75:systemd Journal Upload:/:/usr/bin/false +systemd-network:x:76:76:systemd Network Management:/:/usr/bin/false +systemd-resolve:x:77:77:systemd Resolver:/:/usr/bin/false +systemd-timesync:x:78:78:systemd Time Synchronization:/:/usr/bin/false +systemd-coredump:x:79:79:systemd Core Dumper:/:/usr/bin/false +uuidd:x:80:80:UUID Generation Daemon User:/dev/null:/usr/bin/false +systemd-oom:x:81:81:systemd Out Of Memory Daemon:/:/usr/bin/false +nobody:x:65534:65534:Unprivileged User:/dev/null:/usr/bin/false diff --git a/source-files/shadow b/source-files/shadow new file mode 100644 index 0000000..71c4709 --- /dev/null +++ b/source-files/shadow @@ -0,0 +1,14 @@ +root:x:19901:::::: +bin:x:19901:::::: +daemon:x:19901:::::: +messagebus:x:19901:::::: +systemd-journal-gateway:x:19901:::::: +systemd-journal-remote:x:19901:::::: +systemd-journal-upload:x:19901:::::: +systemd-network:x:19901:::::: +systemd-resolve:x:19901:::::: +systemd-timesync:x:19901:::::: +systemd-coredump:x:19901:::::: +uuidd:x:19901:::::: +systemd-oom:x:19901:::::: +nobody:x:19901:::::: diff --git a/source.sh b/source.sh new file mode 100644 index 0000000..7deff35 --- /dev/null +++ b/source.sh @@ -0,0 +1,63 @@ +# This is the source.sh script. It is executed by BPM in a temporary directory when compiling a source package +# BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE +# BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT + +DOWNLOAD="https://wwww.my-url.com/file.tar.gz" +FILENAME="${DOWNLOAD##*/}" + +# The package function is executed in the source directory +# This function is used to move the compiled files into the output directory +package() { + mkdir -p "$BPM_OUTPUT"/etc + mkdir -p "$BPM_OUTPUT"/var + mkdir -p "$BPM_OUTPUT"/usr + mkdir -p "$BPM_OUTPUT"/dev + mkdir -p "$BPM_OUTPUT"/proc + mkdir -p "$BPM_OUTPUT"/sys + mkdir -p "$BPM_OUTPUT"/run + mkdir -p "$BPM_OUTPUT"/tmp + mkdir -p "$BPM_OUTPUT"/boot + mkdir -p "$BPM_OUTPUT"/opt + mkdir -p "$BPM_OUTPUT"/srv + mkdir -p "$BPM_OUTPUT"/mnt + mkdir -p "$BPM_OUTPUT"/home + + mkdir -p "$BPM_OUTPUT"/etc/{opt,sysconfig} + mkdir -p "$BPM_OUTPUT"/usr/lib/firmware + mkdir -p "$BPM_OUTPUT"/media/{floppy,cdrom} + mkdir -p "$BPM_OUTPUT"/usr/{,local/}{include,src} + mkdir -p "$BPM_OUTPUT"/usr/{,local/}{bin,lib,lib64,sbin} + mkdir -p "$BPM_OUTPUT"/usr/{,local/}share/{color,dict,doc,info,locale,man} + mkdir -p "$BPM_OUTPUT"/usr/{,local/}share/{misc,terminfo,zoneinfo} + mkdir -p "$BPM_OUTPUT"/usr/{,local/}share/man/man{1..8} + mkdir -p "$BPM_OUTPUT"/var/{cache,local,log,mail,opt,spool} + mkdir -p "$BPM_OUTPUT"/var/lib/{color,misc,locate} + + install -d -m 0750 "$BPM_OUTPUT"/root + install -d -m 1777 /tmp "$BPM_OUTPUT"/var/tmp + + ln -s usr/bin "$BPM_OUTPUT"/bin + ln -s usr/sbin "$BPM_OUTPUT"/sbin + ln -s usr/lib "$BPM_OUTPUT"/lib + ln -s usr/lib64 "$BPM_OUTPUT"/lib64 + ln -s /proc/self/mounts "$BPM_OUTPUT"/etc/mtab + ln -s /run "$BPM_OUTPUT"/var/run + ln -s /run/lock "$BPM_OUTPUT"/var/lock + ln -s bash "$BPM_OUTPUT"/bin/sh + + touch "$BPM_OUTPUT"/var/log/{btmp,lastlog,faillog,wtmp} + chgrp utmp "$BPM_OUTPUT"/var/log/lastlog + chmod 664 "$BPM_OUTPUT"/var/log/lastlog + chmod 600 "$BPM_OUTPUT"/var/log/btmp + + cp "$BPM_WORKDIR"/hosts "$BPM_OUTPUT"/etc/hosts + cp "$BPM_WORKDIR"/group "$BPM_OUTPUT"/etc/group + cp "$BPM_WORKDIR"/passwd "$BPM_OUTPUT"/etc/passwd + cp "$BPM_WORKDIR"/gshadow "$BPM_OUTPUT"/etc/gshadow + cp "$BPM_WORKDIR"/shadow "$BPM_OUTPUT"/etc/shadow + cp "$BPM_WORKDIR"/nsswitch.conf "$BPM_OUTPUT"/etc/nsswitch.conf + cp "$BPM_WORKDIR"/os-release "$BPM_OUTPUT"/etc/os-release + cp "$BPM_WORKDIR"/lsb-release "$BPM_OUTPUT"/etc/lsb-release + + echo "tidelinux" > "$BPM_OUTPUT"/etc/hostname +}