itkujo
SKSignal K
•Created by itkujo on 12/18/2024 in #server
MarineComOS
Time to write my first image to a RPI and see what we get.
15 replies
SKSignal K
•Created by itkujo on 12/18/2024 in #server
MarineComOS
will be spending more time on this soon.
15 replies
SKSignal K
•Created by itkujo on 12/18/2024 in #server
MarineComOS
@Matti Airas Working on adding HASS.IO to the image. But wondering if I do a docker or supervised installation. Not sure the HASS Add-Ons is something I want available only to prevent conflicts. But what do you think?
15 replies
SKSignal K
•Created by itkujo on 12/18/2024 in #server
MarineComOS
OS is building right now. Was semi busy with the holidays visiting Family. But I will be able to test the OS in a couple of house.
15 replies
SKSignal K
•Created by itkujo on 12/18/2024 in #server
MarineComOS
@Matti Airas can you change the name of this thread to MarineComOS please?
15 replies
SKSignal K
•Created by itkujo on 12/18/2024 in #server
MarineComOS
Ok, the Official Name is going to be MarineComOS and I bought the domain. To help with Publishing the image.
15 replies
SKSignal K
•Created by instantchow on 12/20/2024 in #questions
is the iKommunicate the only commertially avail SK server with built in NMEA hardware interfaces?
No, we are building our own in house item. Hopefully we will have some more info on release by end of January.
17 replies
SKSignal K
•Created by instantchow on 12/20/2024 in #questions
is the iKommunicate the only commertially avail SK server with built in NMEA hardware interfaces?
this will be changing soon. In the process of development for a new device with some cool features.
17 replies
SKSignal K
•Created by itkujo on 12/18/2024 in #server
MarineComOS
@Matti Airas what you think?
15 replies
SKSignal K
•Created by itkujo on 12/18/2024 in #server
MarineComOS
Core Requirements
Base OS:
Debian-based custom Linux distribution.
Partition Layout:
Boot Partition:
A small FAT32 partition for bootloader files, compatible with ARM and x86.
Root Partition A (/):
Active partition with a read-only root filesystem.
Root Partition B (/):
Inactive partition for staging updates.
Writable Partition (/data):
Dedicated writable partition for Docker containers, dependencies, and other dynamic data.
Filesystem Design:
Root partitions (A and B): ext4 or squashfs with OverlayFS for runtime modifications.
Writable partition: ext4, btrfs, or xfs (optimized for Docker).
Update Requirements
Dual-Partition Atomic Updates:
Updates are staged on the inactive partition.
Switch bootloader to updated partition after successful update validation.
Rollback to previous partition in case of failure.
Headless Operation:
Must be fully functional and accessible without a GUI.
Rollback Mechanism:
Automatic rollback to the previous partition on update failure.
Networking and Remote Access
SSH Enabled by Default:
Pre-installed and configured openssh-server.
Ensure SSH starts automatically on first boot.
Support key-based authentication with optional password login.
Networking:
Default configuration for DHCP.
Support for static IP configuration if needed.
Dynamic Data Management
Persistent Data Storage:
Store user data, logs, Docker containers, and other dynamic content on the /data partition.
Ensure /data is consistent across boots and partition switches.
Writable Layer:
OverlayFS for temporary runtime changes on the read-only root filesystem.
System Compatibility
Cross-Architecture Support:
Fully compatible with ARM (e.g., Raspberry Pi) and x86 architectures.
Separate images or builds for each architecture if needed.
Raspberry Pi Imager Support:
Create .img files compatible with Raspberry Pi Imager.
Security Considerations
System Integrity:
Root filesystem remains read-only to prevent tampering.
Use secure bootloader configurations (e.g., GRUB for x86, U-Boot for ARM).
SSH Security:
Optionally disable root login.
Key-based authentication for headless access.
Firewall (ufw) pre-configured to allow SSH traffic.
Updates and Upgrades:
Secure OTA update mechanism to update the inactive partition.
Deployment and Testing
Factory Reset Mechanism:
Provide an option to reset the writable partition or system settings to their default state.
Testing Across Architectures:
Validate the system, partition setup, and update mechanism on both ARM and x86 platforms.
Documentation:
Include clear instructions for first-time setup, partition usage, and system updates.
Optional Features (Future Consideration)
Compression:
Use squashfs for reduced storage requirements.
Snapshotting:
Use btrfs or similar for snapshot-based rollback.
Monitoring and Logs:
Implement remote log storage or monitoring tools for headless operation.
Docker Optimization:
Pre-configure Docker storage on the writable partition.
Let me know if there’s anything to add or adjust in this requirements list!
15 replies
SKSignal K
•Created by itkujo on 12/18/2024 in #server
MarineComOS
Alright well here by popular demand working on putting a linux distro for all. I will post the requirement below and update as the community request anything. I am making this to be compatible with most hardware as well.
15 replies
SKSignal K
•Created by itkujo on 12/13/2024 in #server
itkujo - SignalK RPI5 Pro Marine Case. I want t...
I want to get a go fund me going in the near future to make a semi rugged case for the RPI 5. With the Ability to add whichever plug you may want/need for you specific setup all while being fanless and IP rated. I have a pretty good idea of what I want to build. And will be sharing it here.
4 replies
SKSignal K
•Created by itkujo on 12/13/2024 in #server
itkujo - SignalK - HASS.io and others - intergr...
Hello everyone. So I have created a way already to make this happen using already tools that are in place currently.
My goal is to make a more user friendly way of creating this integration. With a less technicall GUIn but in the mean time I shall start by showing how I did my original intergration. This should allow me to also do a few other things in the future hopefully like Automating NMEA2000 Switches such as the Maretron DC relay switches.
1 replies