diff --git a/Src/reactornoboom/data/bin/reactornoboom b/Src/reactornoboom/data/bin/reactornoboom index 725e492..5f7d6c2 100644 --- a/Src/reactornoboom/data/bin/reactornoboom +++ b/Src/reactornoboom/data/bin/reactornoboom @@ -1,7 +1,7 @@ local service={} local fs=require("fs") local reactor=syscall.open("/dev/raw/by-type/fissionReactorLogicAdapter/1","rw") -local boiler=syscall.open("/dev/raw/by-type/boilerValve/1") +local boiler=syscall.open("/dev/raw/by-type/boilerValve/1","rw") local exit=false local temp,fuel,waste,hcool,cool,dmg = 0,0,0,0,0,0 function service.dmgservice() @@ -12,24 +12,33 @@ end function service.wasteservice() while not exit do - + waste=syscall.devctl(reactor, "getWastePercent") end end function service.coolantservice() while not exit do - + hcool=syscall.devctl(reactor, "getHeatedCoolantPercent") + cool=syscall.devctl(reactor, "getHeatedCoolantPercent") end end function service.extraservice() while not exit do - + syscall.exit() end end function service.storeservice() while not exit do - + syscall.exit() end +end + +for name, func in pairs(service) do + syscall.spawn(func, name) +end + +while true do + print(temp,fuel,hcool,cool,dmg,waste) end \ No newline at end of file diff --git a/compile.py b/compile.py index 6ec4222..1c86aaf 100644 --- a/compile.py +++ b/compile.py @@ -2,8 +2,8 @@ import hashlib import json -import shutil -import tarfile +import shutil, io +import tarfile, gzip from pathlib import Path ROOT = Path(__file__).resolve().parent @@ -14,7 +14,7 @@ PACKAGE_DIR = PACKAGE_ROOT / "raw" # main repo API_ROOT = "https://git.astronand.dev/Astronand/HyperionOS-packages/raw/branch/main" -#local repo +# local repo #API_ROOT = "http://localhost:8001" DEFAULT_VERSION = "0.0.0" @@ -89,6 +89,15 @@ def read_dependencies(folder): return dependencies if dependencies else DEFAULT_DEPENDENCIES +def reproducible_filter(info): + info.mtime = 0 + info.uid = 0 + info.gid = 0 + info.uname = "" + info.gname = "" + + return info + def create_package(folder): name = folder.name @@ -102,8 +111,25 @@ def create_package(folder): debug(f"Packing {name}") - with tarfile.open(tarball, "w:gz") as archive: - archive.add(folder, arcname=name, filter=exclude) + # Create deterministic TAR + tar_data = io.BytesIO() + + with tarfile.open(fileobj=tar_data, mode="w") as archive: + archive.add( + folder, + arcname=name, + filter=reproducible_filter, + ) + + # Create deterministic gzip + compressed = gzip.compress( + tar_data.getvalue(), + compresslevel=9, + mtime=0, + ) + + with open(tarball, "wb") as file: + file.write(compressed) package_hash = sha256(tarball) diff --git a/packages/Hypersplash.pkg b/packages/Hypersplash.pkg index a98cc14..be1f8d1 100644 --- a/packages/Hypersplash.pkg +++ b/packages/Hypersplash.pkg @@ -4,6 +4,6 @@ "authors": [], "dependencies": [], "version": "0.0.0", - "hash": "b9949aaa204f24d69b74c38efc42af8b", + "hash": "e79cdd6587271fe3e8966df984a30ddf", "tarball": "https://git.astronand.dev/Astronand/HyperionOS-packages/raw/branch/main/packages/raw/Hypersplash.tar.gz" } diff --git a/packages/brainfuck.pkg b/packages/brainfuck.pkg index f38db5e..f1d79a2 100644 --- a/packages/brainfuck.pkg +++ b/packages/brainfuck.pkg @@ -7,6 +7,6 @@ ], "dependencies": [], "version": "1.0.0", - "hash": "b5b39d1f3fb742274b9cf97333cb7535", + "hash": "bed11e2cab125cfa58e5bbf3afc51242", "tarball": "https://git.astronand.dev/Astronand/HyperionOS-packages/raw/branch/main/packages/raw/brainfuck.tar.gz" } diff --git a/packages/ccemu.pkg b/packages/ccemu.pkg index 29fd2a4..dc05e3b 100644 --- a/packages/ccemu.pkg +++ b/packages/ccemu.pkg @@ -4,6 +4,6 @@ "authors": [], "dependencies": [], "version": "0.0.0", - "hash": "422adc2dd07d99cbf1d7ca66383a62a4", + "hash": "f0f7d79c21afaab4bd3260db908f82f7", "tarball": "https://git.astronand.dev/Astronand/HyperionOS-packages/raw/branch/main/packages/raw/ccemu.tar.gz" } diff --git a/packages/raw/Hypersplash.tar.gz b/packages/raw/Hypersplash.tar.gz index 442bf2e..51a51b2 100644 Binary files a/packages/raw/Hypersplash.tar.gz and b/packages/raw/Hypersplash.tar.gz differ diff --git a/packages/raw/brainfuck.tar.gz b/packages/raw/brainfuck.tar.gz index 2dc7c26..663ce96 100644 Binary files a/packages/raw/brainfuck.tar.gz and b/packages/raw/brainfuck.tar.gz differ diff --git a/packages/raw/ccemu.tar.gz b/packages/raw/ccemu.tar.gz index a76a045..f3cab54 100644 Binary files a/packages/raw/ccemu.tar.gz and b/packages/raw/ccemu.tar.gz differ diff --git a/packages/raw/rawexplorer.tar.gz b/packages/raw/rawexplorer.tar.gz index bbe32e5..52dfd11 100644 Binary files a/packages/raw/rawexplorer.tar.gz and b/packages/raw/rawexplorer.tar.gz differ diff --git a/packages/raw/reactornoboom.tar.gz b/packages/raw/reactornoboom.tar.gz index fd2157b..f893e30 100644 Binary files a/packages/raw/reactornoboom.tar.gz and b/packages/raw/reactornoboom.tar.gz differ diff --git a/packages/raw/rootkit.tar.gz b/packages/raw/rootkit.tar.gz index 73597c2..a72a265 100644 Binary files a/packages/raw/rootkit.tar.gz and b/packages/raw/rootkit.tar.gz differ diff --git a/packages/raw/taskunmanager.tar.gz b/packages/raw/taskunmanager.tar.gz index 2fed82e..66d917c 100644 Binary files a/packages/raw/taskunmanager.tar.gz and b/packages/raw/taskunmanager.tar.gz differ diff --git a/packages/rawexplorer.pkg b/packages/rawexplorer.pkg index aacbfdf..ee0fdd4 100644 --- a/packages/rawexplorer.pkg +++ b/packages/rawexplorer.pkg @@ -4,6 +4,6 @@ "authors": [], "dependencies": [], "version": "0.0.0", - "hash": "a562bab00d47503234da7fee596208b0", + "hash": "e52983a4fc1de987784cc2699f570a35", "tarball": "https://git.astronand.dev/Astronand/HyperionOS-packages/raw/branch/main/packages/raw/rawexplorer.tar.gz" } diff --git a/packages/reactornoboom.pkg b/packages/reactornoboom.pkg index 6644eeb..c2a8807 100644 --- a/packages/reactornoboom.pkg +++ b/packages/reactornoboom.pkg @@ -4,6 +4,6 @@ "authors": [], "dependencies": [], "version": "0.0.0", - "hash": "b5cd95451af1948cbe72a193426e66bf", + "hash": "69d5178fff65d1dda6e8d3b9e3c14489", "tarball": "https://git.astronand.dev/Astronand/HyperionOS-packages/raw/branch/main/packages/raw/reactornoboom.tar.gz" } diff --git a/packages/rootkit.pkg b/packages/rootkit.pkg index 34b2095..bf30fe5 100644 --- a/packages/rootkit.pkg +++ b/packages/rootkit.pkg @@ -4,6 +4,6 @@ "authors": [], "dependencies": [], "version": "0.0.0", - "hash": "a34478ef284cd38bb21e40a1b31c0454", + "hash": "b4e3d3e27a6bee3ed9666cbf1a668d4f", "tarball": "https://git.astronand.dev/Astronand/HyperionOS-packages/raw/branch/main/packages/raw/rootkit.tar.gz" } diff --git a/packages/taskunmanager.pkg b/packages/taskunmanager.pkg index 77ad802..d6b4444 100644 --- a/packages/taskunmanager.pkg +++ b/packages/taskunmanager.pkg @@ -4,6 +4,6 @@ "authors": [], "dependencies": [], "version": "0.0.0", - "hash": "a5216495d9b4615706627d68251ebec4", + "hash": "532314bcebfb951b5480d2f3e185be8f", "tarball": "https://git.astronand.dev/Astronand/HyperionOS-packages/raw/branch/main/packages/raw/taskunmanager.tar.gz" }