Skip to content

Commit

Permalink
Add Deployment/ folder
Browse files Browse the repository at this point in the history
  • Loading branch information
hmelder committed Mar 16, 2024
1 parent a77243d commit 8d029e2
Show file tree
Hide file tree
Showing 5 changed files with 435 additions and 0 deletions.
32 changes: 32 additions & 0 deletions Deployment/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# VMP Debian RootFS

This subdirectory contains the scripts and configuration files to build a Debian
root filesystem with the complete VMP stack installed.

We use [rootfsbuilder](https://github.com/hmelder/rootfsbuilder) to build the
root filesystem. By default, a squashfs image is created, but it is also possible
to create a tarball by adding `"tarball_type": "tar.gz"` to the JSON configuration.

## Building the root filesystem

Obtain the `rootfsbuilder` tool by building it from source. More
information about the tool and the build process can be found in the
projects README.
After that, run the following command to build the root filesystem:

```bash
sudo ./setup.sh # This will create payload.tar
sudo rootfsbuilder bookworm-amd64.json
```

The payload contains a post install script that builds the Objective-C environment (libobjc2, libdispatch (Grand Central Dispatch), gnustep-base (Foundation)). If everything goes well, you now have a squashfs image in
the current working directory.

## Customizing the root filesystem

You can add additional files to the root filesystem by adding them to the
payload directory. The files will be copied to the root filesystem during the
build process.

If you want to change the release or distribution, you can modify the
build configuration JSON file.
21 changes: 21 additions & 0 deletions Deployment/bookworm-amd64.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"config_version": 1,
"name": "VMP OS",
"distribution": "debian",
"release": "bookworm",
"architecture": "arm64",
"variant": "minbase",
"mirror": "http://deb.debian.org/debian/",
"squashfs": true,
"additional_packages": [
"ca-certificates",
"locales",
"sudo",
"wget",
"systemd-timesyncd"
],
"payload": "payload.tar",
"payload_type:": "tar",
"post_install_command": "bash /root/post-install.sh",
"use_hosts_resolv_conf": true
}
Loading

0 comments on commit 8d029e2

Please sign in to comment.