-
Notifications
You must be signed in to change notification settings - Fork 9
Post Installation
This article aims to give you some information on what to do after installing MassOS and how to make the most out of your new system.
If you wish to add additional user accounts to the system, you can broadly do so by using the following command:
useradd -m <username>Replacing the angled bracket field with the username of the new user. Please note that the username can only contain lowercase alphanumeric characters. No spaces nor special characters are allowed.
If you wish to specify a full name for the user, then add the -c "<Full Name>" option to the above command. The full name, unlike the username, can contain uppercase characters, spaces and special characters.
If you wish to make the user an administrator of the system (similar to the primary user), then add -G wheel to the above command, to add the user to the wheel system group. Administrators can elevate privileges by using the sudo and pkexec commands. Some alternative groups can be used instead if you wish to allow the user to manage certain services without being a full system administrator. These include lpadmin, for managing printers, and netdev, for managing network connections. You can substitute wheel with one or both of them if desired. Multiple groups can be combined with a comma, for example -G lpadmin,netdev. These groups are only needed if the user is not in the wheel group. Users in the wheel group are considered full system administrators, and thus can manage the aforementioned services without needing to alsco be in any of the supplimentary groups.
If you wish to make the user's default shell ZSH or Fish instead of Bash, then add the -s /usr/bin/zsh OR -s /usr/bin/fish option to the above command as necessary. When this option is omitted, Bash is used as the default shell (/usr/bin/bash), so if Bash is desired, the -s option does not need to be passed. Note that (unlike some other distributions) /usr/bin/ is used as the command prefix instead of /bin/. This is due to the fact that MassOS uses a merged-usr filesystem heirarchy, where /bin and /lib are symlinks to their counterparts under /usr/.
Combining all of the previously outlined options, here are some example command usages:
# Create a user named 'Alex Smith' who will be an administrator of the system:
useradd -c "Alex Smith" -G wheel -m alex
# Create a user named 'Sam Johnson' who is not a system administrator but may still manage printing and networking, and prefers the ZSH shell:
useradd -c "Sam Johnson" -G lpadmin,netdev -s /usr/bin/zsh -m sam
# Create an unprivileged user with the username 'someone', who doesn't wish to have a full name, and prefers the Fish shell:
useradd -s /usr/bin/fish -m someoneAfter creating a new user, their account will be locked by default. To unlock it, you must set a password, which you can do with the following command:
passwd <username>
Again replacing the angled bracket placeholder with the actual username, matching whatever you used with the useradd command, for example:
passwd sam
If the account will be given someone other than you (who was the account creator), then it is in your best interest to generate a random secure one-time password to be set for the account. If you're unsure of a suitable password, you can generate one by running the command pwmake 64. Then, provide this temporary password to the user. Inform them that they can change their password after logging in for the first time by running the command:
passwd
This is without any additional parameters (which defaults the target user to the current user as opposed to whichever user is specified as the argument).
Finally, it should be noted that the useradd command automatically copies all files and directories from the /etc/skel directory into the new user's home directory. Thus, this is the directory you can modify if you wish to change or add to such files.
There are multiple ways you can install software on MassOS. Some of these are described in this article.
Flatpak is a universal package manager designed for distributing desktop applications across a wide variety of GNU/Linux distributions. It is installed and configured with the Flathub repository by default on MassOS, making it the most convenient way to get new apps.
You can install Flatpak apps graphically, using the Software program on MassOS, as well as via the command-line.
The software center on MassOS, GNOME Software, can be launched from the applications menu, or from the panel at the bottom of the screen:

On the first launch, it may take a few seconds to download application data. Once open, the front page of the store contains some recommended apps. You can browse through the categories, or click the search button at the top left hand corner:

For example: To install LibreOffice, we will search for it:

Now click "Install" and wait patiently. When the app is installed, it will be available from your apps list. You can also launch it by clicking the "Launch" button in the software center.

You can also install Flatpak apps from the terminal.
Press Control+Alt+T to open a terminal, or find the terminal in your apps list.
You can type the following command to install Flatpak software:
flatpak install <name of package>
For example, to install LibreOffice:
flatpak install org.libreoffice.LibreOffice
To search for software, replace install with search:
flatpak search <search term>
To list installed software:
flatpak list
To update all your installed Flatpak apps:
flatpak update
AppImages are Linux apps which bundle all their dependencies into a single portable executable which can be run from almost anywhere.
Many popular projects including Kdenlive and Krita provide AppImages on their download pages. There are also hundreds of community-built AppImages for other popular applications like Atom, Arduino, Blender, Chromium, GIMP and many more available from AppImageHub.
After downloading an AppImage file, all you have to do is make it executable, and then run it. To make an AppImage executable, simply right click the file, go to "Permissions", and check "Allow this file to run as a program".

MassOS includes FUSE 2 out of the box, which is required by AppImages, and unlike many other modern distros, the MassOS developers have no plans to remove or deprecate FUSE 2 support. This will ensure, even on the newest versions of MassOS, older AppImages will continue to run successfully.
Homebrew is a ports-like package manager which supports macOS as well as almost any GNU/Linux distribution. It supports installing precompiled binary packages ("bottles"), precompiled graphical apps ("casks"), as well as automatically compiling from source any programs which do not have a binary package available.
NOTE: Installing Homebrew requires around 700MB of disk space, not including any packages you might later install with it.
Homebrew can be installed on MassOS by running the following command in a terminal:
bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
When prompted, type your user password and press enter. This will install Homebrew to the directory /home/linuxbrew. If you are not an administrator on the system, the script can instead install Homebrew under your home directory, but this is NOT recommended, as precompiled binary packages ("bottles") expect the standard /home/linuxbrew location, and installations outside of this prefix will require most packages to be compiled from source.

Press enter at the next confirmation prompt, and be patient. The installation may take some time.

Once the installation is finished, you'll need to set up the environment to be able to use Homebrew. Run the following commands (you may optionally omit the commands for shells you do not use, but we recommend at least running the command for Bash, which is the default shell on MassOS):
# For Bash:
/home/linuxbrew/.linuxbrew/bin/brew shellenv bash >> ~/.bashrc
# For ZSH:
/home/linuxbrew/.linuxbrew/bin/brew shellenv zsh >> ~/.zshrc
# For fish:
mkdir -p ~/.config/fish/conf.d && /home/linuxbrew/.linuxbrew/bin/brew shellenv fish > ~/.config/fish/conf.d/linuxbrew.confAlternatively, if your installation is local (unprivileged), run the following commands instead of the ones above:
# For Bash:
~/.linuxbrew/bin/brew shellenv bash >> ~/.bashrc
# For ZSH:
~/.linuxbrew/bin/brew shellenv zsh >> ~/.zshrc
# For fish:
mkdir -p ~/.config/fish/conf.d && ~/.linuxbrew/bin/brew shellenv fish > ~/.config/fish/conf.d/linuxbrew.confNow Homebrew has been successfully installed, you must restart your terminal session, i.e. closing and restarting your terminal application, or logging out and logging back in if you are using a tty or are connected remotely via SSH.
NOTE: Do NOT run brew commands with sudo. They should be run as your unprivileged user. If there are multiple users on your system, only the user who originally installed Homebrew can install/manage Homebrew packages. Other users should instead install their own local copy of Homebrew (described above as an "unprivileged" installation).
NOTE: If a program is installed with brew, it will take priority in your PATH over any existing system-installed copy (i.e. if the program is built in to MassOS). As such, we recommend checking if the program you want to install is already included on MassOS, and if so, seeing if the system-installed copy suits your needs without needing to also install it from Homebrew. Furthermore, the MassOS developers strongly discourage installing GCC from Homebrew (even if the official Homebrew documentation recommends it), because overriding MassOS's compiler with Homebrew's compiler can cause unexpected runtime issues.
To install a package, run:
brew install <package-name>For example:
brew install docker
To update packages, run:
brew update
To search for a package, run:
brew search <search-query>
For example:
brew search docker
To list all installed packages, run:
brew list
To uninstall a package:
brew uninstall <package-name>
For example:
brew uninstall docker
For full/complete usage details, see the following commands:
brew help
man brew
Canonical's distribution-independent package manager, snapd, is supported on MassOS, however it is not installed by default, due to its controversy within the GNU/Linux community. Nonetheless, it can provide easy access to some software packages unavailable through Flatpak. Furthermore, unlike Flatpak, snapd is not limited only to GUI applications - many command-line programs are distributed through snapd too.
To install snapd, run the following command, and answer y when prompted:
sudo massos-snapd install
You will need to restart your computer before you can use snapd. The massos-snapd program will prompt to restart automatically; it is strongly recommended to answer y again to proceed.
The default graphical software application on MassOS, GNOME Software, does NOT support finding, installing or managing snap packages. However, you can instead install App Center (also known as Snap Store). If you wish to so, run the following command:
snap install snap-store
snapd may not automatically be upgraded after you install a MassOS system upgrade. To upgrade snapd after upgrading MassOS, run the install command again:
sudo massos-snapd install
You can check the install status of snapd by running the following command:
sudo massos-snapd status
You can update all your installed snaps by running the following command:
sudo snap refresh
The MassOS Software Index (currently work-in-progress) is an attempt to provide detailed information on how to install a wide range of software on MassOS, primarily software that is not available through conventional means (e.g., Flatpak). Although it is under development, it may contain the program(s) you're looking for - feel free to check it out at MassOS Software Index.