| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| comfilepi:trixie:index [2026/07/03 04:57] – [Read-only File System] mfranklin | comfilepi:trixie:index [2026/07/03 08:55] (current) – [chrony] mfranklin |
|---|
| See the [[https://www.raspberrypi.com/news/trixie-the-new-version-of-raspberry-pi-os/|Raspberry Pi Trixie OS announcement]]. | See the [[https://www.raspberrypi.com/news/trixie-the-new-version-of-raspberry-pi-os/|Raspberry Pi Trixie OS announcement]]. |
| |
| The Raspberry Pi Trixie OS has adopted [[https://www.raspberrypi.com/news/cloud-init-on-raspberry-pi-os/|cloud-init]] for first boot initialization, and the latest Raspberry Pi imager has removed the ability to customize custom OS images. Therefore, to customize the OS prior to booting (e.g. changing the default userid/password, adding authorized SSH keys, etc.) please edit the //user-data// file according the the instructions in the [[https://docs.cloud-init.io/en/latest/index.html|cloud-init documentation]] | The Raspberry Pi Trixie OS has adopted [[https://www.raspberrypi.com/news/cloud-init-on-raspberry-pi-os/|cloud-init]] for first boot initialization, and the latest Raspberry Pi imager has removed the ability to customize custom OS images. Therefore, to customize the OS prior to booting (e.g. changing the default userid/password, adding authorized SSH keys, etc.) please edit the //user-data// file in the //bootfs// partition according the the instructions in the [[https://docs.cloud-init.io/en/latest/index.html|cloud-init documentation]] |
| ===== COMFILE Technology Changes ===== | ===== COMFILE Technology Changes ===== |
| |
| This layout was created to make it easier to [[#read-only_file_system|enable the read-only file system]], effectively making the //bootfs// and //rootfs// partitions read-only, while still having a place to write data to (i.e. the //datafs// partition). | This layout was created to make it easier to [[#read-only_file_system|enable the read-only file system]], effectively making the //bootfs// and //rootfs// partitions read-only, while still having a place to write data to (i.e. the //datafs// partition). |
| |
| If the //datafs// partition is too small, and your SD card, eMMC, or other storage medium is large enough, you can use [[https://gparted.org/|gparted]], or other disk partitioning utility, to adjust partition sizes as needed. Currently, the //rootfs// partition must be the last partition of the disk to maintain compatibility with some configuration utilities of the Raspberry Pi. | If the //datafs// partition is too small, and your SD card, eMMC, or other storage medium is large enough, you can use [[https://gparted.org/|gparted]], or other disk partitioning utilities, to adjust partition sizes as needed. Currently, the //rootfs// partition must be the last partition of the disk to maintain compatibility with some configuration utilities of the Raspberry Pi. |
| |
| ==== Read-only File System ==== | ==== Read-only File System ==== |
| === Method 2: Bind Mount === | === Method 2: Bind Mount === |
| |
| - A bind mount can also be used to make a file on the //datafs// partition appear at its original location on the //rootfs// partition. This is useful when the original path must remain a normal file or directory, or when the application does not work well with symbolic links. | A bind mount can also be used to make a file on the //datafs// partition appear at its original location on the //rootfs// partition. This is useful when the original path must remain a normal file or directory, or when the application does not work well with symbolic links. |
| - Disable the read-only file system, and reboot. | - Disable the read-only file system, and reboot. |
| - Copy the file from the //rootfs// partition to an analogous location on the //datafs// partition. e.g. ''cp /etc/default/locale /data/etc/default/locale'' | - Copy the file from the //rootfs// partition to an analogous location on the //datafs// partition. e.g. ''cp /etc/default/locale /data/etc/default/locale'' |
| - After rebooting, ''/etc/default/locale'' will appear to be in its original location, but its contents will actually come from ''/data/etc/default/locale''. Changes made to the file will be preserved on the writable //datafs// partition. | - After rebooting, ''/etc/default/locale'' will appear to be in its original location, but its contents will actually come from ''/data/etc/default/locale''. Changes made to the file will be preserved on the writable //datafs// partition. |
| |
| | ==== .NET 10 ==== |
| | |
| | The .NET 10 SDK and Microsoft’s Visual Studio Remote Debugger (//vsdbg//) are installed by default, so .NET development should be ready to go out of the box. |
| | |
| | Now that [[https://learn.microsoft.com/en-us/dotnet/core/install/linux-debian?tabs=dotnet10|Microsoft is publishing .NET installation packages for ARM64 Debian]], there is no need for COMFILE Technology to publish installation packages (e.g. //cpi-dotnet-sdk-9.0//) or for users to install .NET manually. Microsoft's repositories are already added to the operating system so you easily install, update, or remove packages with ''apt''. |
| | |
| | COMFILE Technology has made it easier than ever to develop .NET applications, even WinForms applications, for ARM Linux devices like the Comfile Pi. |
| | |
| | * [[:winforms:index|ComfileTech.WinForms]] - A port of Mono WinForms to .NET 10, maintained by COMFILE Technology. |
| | * [[:comfilepi:dotnet_core_development:remote_debugger:index|.NET Remote Debug Extension for Visual Studio |
| | ]] - Deploy, launch, and debug your .NET applications on the ComfilePi all from withing the Visual Studio development environment. |
| | * [[:comfilepi:dotnet_core_development:vscode_remote_debug_configurator:index|.NET Remote Debug Configurator for Visual Studio Code]] - Easily create the .json files to deploy, launch, and debug your .NET applications on the ComfilePi all from withing the Visual Studio Code development environment. |
| | |
| | Mono is no longer installed by default. Instead, please consider using the [[:winforms:index|ComfileTech.WinForms]] library which will allow you to use the latest version of .NET and C# to write WinForms applications for the ComfilePi. If you would like to use mono, install the //mono-complete// package from the Debian repositories. |
| | |
| | ==== chrony ==== |
| |
| | The ComfilePi Trixie OS replaces //systemd-timesyncd// with [[https://chrony-project.org/|chrony]] to provide better support for real-time clock (RTC) control and configuration. |