Software ======== We ship the Reform Next system in a minimalist form to give you the freedom to decide what you want to install. As we want the device to be practical out of the box, we preinstalled some essential tools, which are listed in the following section. We also included a section about the so-called "Reform Tools," which are Reform (series) specific helpers and scripts. MNT Reform Next can run most Linux applications that are available for 64-bit ARM-based computers (also called AArch64 or ARM64), and many x86-64 Linux applications through emulation by ``box64``. Preinstalled Software --------------------- Document Viewer View PDFs and other documents. Command: ``papers`` ``_ Firefox Mozilla's open-source web browser. We disable AI features and ads with a default configuration file. Command: ``firefox`` ``_ ptyxis A terminal emulator that is fast, minimalistic, and lightweight. Command: ``ptyxis`` Keyboard shortcut: *SUPER+ENTER* ``_ GNOME Disks Partition, format, and manage internal and external disks. Command: ``gnome-disks`` ``_ Grim & Slurp Grim is a wayland-based screenshot tool, and Slurp lets you select the region of the screen you want to capture (used for Sway). Command: ``grim -g "$(slurp)"`` Keyboard shortcut: *SUPER+SHIFT+X* ``_ htop A terminal-based look at system processes, CPU and memory usage. Command: ``htop`` ``_ micro An accessible, fresh terminal-based text editor. Command: ``micro`` ``_ Luanti (previously Minetest) A 3D block-based open-world game focused on exploration, resource gathering, and construction. Command: ``minetest`` ``_ MPV A versatile, terminal-based media player. Command: ``mpv a-movie-file.mp4`` ``_ NCurses Disk Usage Terminal-based disk usage analysis utility. Command: ``ncdu`` ``_ Neverball This 3D game lets you guide a ball through 24 challenging levels. Command: ``neverball`` ``_ Sxiv A simple and fast image viewer. Command: ``sxiv`` ``_ Thunar Lightweight file manager. Used on the Sway desktop. Command: ``thunar`` ``_ Vim The other major open text editor. Command: ``vim`` (Exit by typing ``:q`` followed by *ENTER*) ``_ Wayland Event Viewer Useful when debugging input devices under wayland-based compositors such as Sway. Command: ``wev`` ``_ Wayvnc Access your MNT Reform Next desktop remotely from VNC clients on other platforms using this server application. Command: ``wayvnc`` ``_ wf-recorder Record MP4 video of your desktop with this program on the Sway desktop. Command: ``wf-recorder`` (Stop with *CTRL+C*. The resulting video is named "recording.mp4") ``_ Updating Software ----------------- We recommend updating your software on a regular basis as bugs get fixed, new features are introduced and improvements are made. For this purpose, Debian has an integrated package manager called ``apt``. You can stay up to date by executing the following command: ``sudo apt update``. This will show you how many packages can be updated. You can either update individual packages using ``sudo apt install package-name`` or everything at once with one command: ``sudo apt full-upgrade``. You can also use *GNOME Software* to explore and install packages with a graphical user interface. Debian doesn't have all Linux software packaged, and you can find additional software using the ``flatpak`` command and *Flathub* (an "App Store" for Linux). Please note that *Flathub* packages are not vetted by MNT or Debian and potentially have risks. You can add the software catalog from *Flathub* to *GNOME Software* using the following commands: .. code-block:: none sudo apt install flatpak # the following goes on one line! flatpak remote-add flathub https://dl.flathub.org/repo/flathub.flatpakrepo Flashing the System Image ------------------------- If your operating system is broken or you want to set up a new system (for example when upgrading to a new Processor Module), you can create a bootable SD card by downloading the MNT Reform Next System Image from: ``_ **First of all, back up all your important data!** The following process will erase everything that is on the SD card you decide to flash. From the link above, download the file whose name matches the Processor Module in your MNT Reform Next: ======================= ===================================== Processor Module Filename ======================= ===================================== RCORE RK3588 ``reform-next-system-rk3588.img.gz`` Quasar QCS6490 ``reform-next-system-qcs6490.img.gz`` Quasar QCS8550 ``reform-next-system-qcs8550.img.gz`` ======================= ===================================== Note that the images for MNT Reform Next may not be compatible with MNT Pocket Reform and MNT Reform (Classic). Unzip the image using gunzip (substitute your actual image file name, also in the following steps): .. code-block:: none gunzip reform-next-system-rk3588.img.gz Identify the device name of your SD card. For example, you can check the output of ``lsblk`` before and after you insert the card and compare which new device appears. Below we use the device sdX, but it will be a different one on your computer. Copy the image to your SD card **(Warning: all data on the SD card will be erased!)**: .. code-block:: none sudo dd if=reform-next-system-rk3588.img of=/dev/sdX \ bs=8M status=progress That's it---now you can boot your Reform Next from the freshly flashed SD card. As new modules become available, you can refer to our online guide: ``_ Reform Tools ------------ We have our own Debian package called ``reform-tools``. These tools are designed to automate otherwise tedious system configuration tasks, so we encourage you to check them out. .. table:: :widths: 30 40 +--------------------------------------+--------------------------------------------------------------------------------+ |Command |Function | +======================================+================================================================================+ |``reform-check`` |Tries to analyze what's wrong with your OS. | +--------------------------------------+--------------------------------------------------------------------------------+ |``reform-help`` |Shows you a list of useful commands. | +--------------------------------------+--------------------------------------------------------------------------------+ |``reform-setup-encrypted`` ``-disk`` |Use this for moving your OS to an NVMe SSD with encryption (recommended). | +--------------------------------------+--------------------------------------------------------------------------------+ |``reform-flash-bootloader`` |This tool updates the bootloader (u-boot or barebox). | +--------------------------------------+--------------------------------------------------------------------------------+ |``reform-rescue-shell`` |If your system is unbootable, run this from an SD card to get a shell into it. | +--------------------------------------+--------------------------------------------------------------------------------+ |``reform-migrate`` |Helps you with OS migration from SD card to NVME or eMMC flash. | +--------------------------------------+--------------------------------------------------------------------------------+ More information about reform-tools: ``_ Running x86 Software -------------------- A popular architecture for computers is x86-64 (a.k.a. AMD64). Binaries compiled for this architecture are normally incompatible with ARM processors. If you want to use binary software, you should make sure that it is built for AArch64 for best performance. The vast majority of open-source software is available for AArch64 (also called ``arm64``). Until RISC architecture will change everything, many games and proprietary closed-source applications are only available as x86 or x86-64 binaries. If you need to run such a binary, you can use a binary translator such as ``box64``, which you can install using ``sudo apt install box64``. .. code-block:: none box64 ./my-game You can even run some Microsoft Windows applications on MNT Reform Next by chaining ``box64`` and ``wine``, which is a Linux compatibility layer for Windows binaries: .. code-block:: none box64 wine ./my-game Box64 can emulate 32-bit x86 binaries as well. For example, you can install Valve's Steam app using the included script: .. code-block:: none /usr/share/doc/box64/examples/install_steam.sh Please note that Steam itself is not open source software. GPU Hacks --------- At the time of writing, most MNT Reform Next Processor Modules are based on ARM System-on-Chips that contain a GPU meant for mobile or "embedded" use. Multiple factors define the limits of the versions of OpenGL, OpenGL ES and Vulkan APIs that software can use on MNT Reform Next: for example, the space- or energy-saving architecture of these GPUs, or the capabilities of the often reverse-engineered open-source drivers such as ``etnaviv`` or ``panfrost``. Sometimes, graphics heavy applications or 3D games are written with large and power hungry desktop GPUs in mind and require a GL or Vulkan version that is out of reach of your device. In some cases the developers do not really require the features available for higher OpenGL versions, though, and you can try to work around the limitation by pretending that your system supports a higher version than it really does. To do this, you can set the following environment variables in a terminal and then launch your application or game from this same terminal: .. code-block:: none export MESA_GL_VERSION_OVERRIDE=4.2 export MESA_GLSL_VERSION_OVERRIDE=420 my-game If this fails, you can always fall back to software emulation of OpenGL, which will be slow but sometimes usable: .. code-block:: none export LIBGL_ALWAYS_SOFTWARE=1 my-game Mesa is the collection of Linux 3D graphics drivers. You can learn more about various Mesa environment variables at ``_