Updates of this document: go to the end of this doc.
The EndeavourOS Welcome app is one of the first apps to encounter, both while installing EndeavourOS, and when starting the installed system.
The purpose of the Welcome app is to help users
- find relevant information about EndeavourOS
- provide an easy way to do some useful operations on the system
Note that the Welcome app is under constant development, and will include more features, as well as bug fixes, over time.
Below we’ll go through the window tabs of the Welcome app.
This window is what you’ll see when starting to install EndeavourOS:
This is the contents of the INSTALL tab.
This tab is useful mainly in the install phase, selected by default when installing the system.
To start the install process, simply click the Start the Installer button. In addition to the installer window, it starts a terminal window that shows plenty of detail of the install process.
Button Update this app! fetches the latest version of the Welcome app from the EndeavourOS repository, and restarts it. This can be useful when the Welcome app is updated after releasing the installer ISO.
Button Update Mirrors starts program
reflector-simple which helps you select the mirrors to use. This is very useful for the online install mode (that you may choose a bit later during the install) as it can speed up the install process quite dramatically.
The Change Display Resolution button (added in Welcome version 3.4.7) helps you to change display resolution. Note that, by default, this button is active only in a virtual machine (supports VirtualBox, VMware, and QEMU). This may be useful if you want to change the VM window size and your display is large enough. It is also useful in the live session if you have a high resolution monitor, and text and other things look too small to work with.
The above feature is implemented on top of the
xrandr command, so package
xorg-xrandr must be installed.
If certain disk management functions like special partitioning or partition formatting is needed, button Partition manager may help you.
Buttons Latest release info, Installation tips, and Troubleshoot should be self explanatory – they will show you related EndeavourOS web pages.
The bottom line buttons are:
- Changelog button provides a view to version history of the Welcome app.
- Help button shows a window of the command line options of Welcome.
- See you later button closes this window.
The next tab contains links to general information about EndeavourOS. This may be quite useful for users that know very little or nothing about EndeavourOS.
The General Info tab contents look like this:
As you can probably guess, the buttons contain links to much more information at the EndeavourOS web site.
And since developing and maintaining a distribution takes resources that the development team must pay for, we’d appreciate any size of donation (the Donate button) to help us cover the mandatory costs.
Note you’ll see the following Welcome tabs after you have installed EndeavourOS, rebooted, and logged in to your new system. The General Info tab has the same contents now as while installing.
The next tab is (as some might say) where the real fun starts!
This tab (and the last tab) are meant to be used (mainly) in the installed system.
The Update Mirrors button is recommended to be clicked as the first thing after logging in the first time. It creates a list of good mirrors for your system. And you’ll use precisely those mirrors when updating the system, or installing new packages to it. Note that you may use this button also at a later time, for example if any of the listed mirrors is no more available, or should you have other problems with mirrors.
This button runs command:
The next button, Update System, is also a very important button. Click it right after the “Update Mirrors” operation has finished, and your system will be up-to-date (and may need to be rebooted). This button can be used later, too. It is recommended to update system at least about once a week.
After the two tasks above are finished, your system is ready to be used.
After you have been using your EndeavourOS system for a while, your system (the package cache) may fill up with old packages that are stored there for convenience. Eventually it may contain gigabytes of old packages! So in order to remove the unneeded old packages automatically, button Package cleanup configuration was added. It helps configuring the service that automatically removes old packages, and saves the number of packages that you want to keep. By default it keeps 3 versions of each package, but for many purposes 2 would be enough.
You may change the Display Manager by clicking the Change Display Manager button. Usually this is not needed, but you may know a reason for doing so.
The EndeavourOS wallpaper button assigns the default EndeavourOS wallpaper back. This may be handy after experimenting with other wallpapers. Note also that this button uses the program
eos-set-background-picture, and that program can be used to set the wallpaper directly on the command line.
If you installed Xfce as your desktop, then you’ll see the related Xfce buttons. They can be used for changing the theming (appearance) of the desktop. The Xfce vanilla theme puts the vanilla theming in place. The Xfce EndeavourOS default theme sets up our default theming. Note that the offline install mode provides the latter, but the online install mode results in the vanilla theming. Note also that both options will bring the default theming, and your own modifications are not included – but your old theming is saved if you want to go back. The buttons will give more instructions about that.
One additional thing to note: there’s a new bottom line button Don’t show me anymore. This button is meant to silence (i.e. not start automatically) the Welcome app until you explicitly enable it again. To enable the Welcome app is easy – just click the Welcome icon in the start menu.
A new button Pacdiff & <diff> is meant for managing files like .pacnew, .pacsave and .pacorig. These files may appear e.g. after an update to a configuration file. As configuration files usually cannot be simply overwritten by a package update, new file version is stored with a .pacnew suffix in the file name. This button helps users manage all such configuration files.
Related configuration: EOS_WELCOME_PACDIFFERS, see more info later in this document.
Buttons under this tab include more links to information about either useful or more advanced things. All users (unless already familiar with the topics) are recommended to check the links under Package management and AUR & yay! buttons. Buttons related to hardware may also be very useful if you have that particular hardware. And Forum tips provides general tips for Forum usage.
Then there’s information about personalizing the Welcome app. Button Tutorial: Personal Commands explain how you can easily create new command buttons into Welcome. They will appear on a new tab Personal Commands. Button Personal Commands drag&drop shows a small window where user can drop items that will appear under the Personal commands tab.
More about the Personal Commands is explained below under Personalizing Welcome.
Add More Apps
The last default tab includes buttons for installing some popular applications.
Even though these apps are popular and useful, we’ve chosen not to install them by default. This gives users a better opportunity to “tailor” their system, but still, have an easy way to install these apps. The packages behind the buttons are:
- gufw (firewall)
- akm (a kernel manager and kernel info source)
- blueberry or blueman with bluez-utils
By the way, do you remember that the previous tab included a button AUR & yay!? As you (should!) know by now, pacman is the main package manager in EndeavourOS. It manages packages that are available from the Arch Linux repositories. But there is a huge amount of more apps available in the AUR (Arch User Repository). AUR is not managed by pacman. That’s why EndeavourOS provides another package manager, yay. It is like pacman, but supports AUR applications in addition to Arch Linux repositories.
Welcome version 3.0 introduced a new feature: users can personalize Welcome by adding own command buttons.
Here’s an example what it might look like:
You can see a new tab Personal Commands and some command buttons are already added in the picture above.
The new tab will be activated only if the configuration file
exists, and the file contains command definitions.
The first button Tutorial: Personal Commands will be automatically created, and it shows a short tutorial about how to create new Welcome commands. Check that out!
The next button, Personal Commands drag&drop starts a window (called a dnd window) where items can be dropped. As you probably remember, the same two buttons appeared also under the Tips tab. They are on both tabs for convenience.
There are two ways to create the configuration file. One is to manually write the file, and the other (the easier way) is to use button Personal Commands drag&drop and drop items to the dnd window.
If you don’t already have the Personal Commands tab available, click the same button under the Tips tab.
Dropping items to the dnd window will cause
- the configuration file to be created if it doesn’t exist
- the configuration file to be updated with button definitions
- the Welcome app to instantly contain the new buttons!
Now your part begins! All additional buttons on this tab are there because you (the user) will add or have added them there.
A bit more about the configuration file
Here’s a very simple example configuration file:
#!/bin/bash # Own commands: # - Create a local array variable 'welcome_own_commands'. # - Add yad form fields as in the example below. local welcome_own_commands=( # Legend: --field=" name!icon!description":fbtn "command" --field=" Firefox!firefox-default!Web browser":fbtn "firefox" --field=" Mousepad!accessories-text-editor!Text editor":fbtn "mousepad" ) # To have own commands activated initially, set local variable # 'activate_own_commands_tab' to "yes"; # otherwise the default tab is active from the start. local activate_own_commands_tab=yes # "yes" or "no"
If you don’t want to drop items to the drag&drop window, you can simply copy the above configuration into the configuration file mentioned above. Then just restart the Welcome app. Now you have enabled this new feature!
The Tutorial button shows more details about the configuration file.
Community member and Moderator Ricklinux discovered a bug that affects the Welcome app on the Cinnamon desktop and it looks like this:
Until now a solution hasn’t been found but the workaround is simple. Go to the preferences menu and disable window effects like this:
Special note about the code
The welcome app includes code that is directly used by some other apps, like eos-update-notifier. The shared code files are:
- contains functions common for the using programs
/etc/eos-script-lib-yad.conf contains the following settings for the using programs:
- EOS_YAD_TERMINAL: name of the terminal program. With this you can force your favorite terminal to be used with the apps welcome and update notifier. But please note that it is possible that the terminal you select may not be compatible with the way the above programs use it, especially if it is not on the list of compatible terminals. By default this is commented out, and one of the supported terminals is used.
- EOS_ROOTER: chooses the program to give elevated privileges for running programs in the terminal. Supported programs are
- EOS_WELCOME_CONNECTION_WARNING: specifies whether the welcome app shows the warning about missing internet connection or not. Values are simple “yes” or “no”.
- EOS_CONNECTION_CHECKER: configures the program to be used for checking if internet connection is available. Supported values are “ping” or “curl”.
- TERMINAL_AT_START: if properly set, makes the welcome app to start a terminal whenever the welcome app is started. See details at the config file.
- EOS_WIFIDEV_CHECK: enable or disable certain ad hoc checks about the wifi driver. The checks are made by clicking the Detect system issues button of the welcome app.
- EOS_KEEP_PKGS: lists the name of packages that shouldn’t be removed when the Detect system issues button is clicked.
- EOS_AUR_HELPER: name of the AUR helper program. Supported values: “yay” and “paru”. Yay is the default.
- EOS_WELCOME_PACDIFFERS: array of diff program names that can be used with
pacdiffvia a button in Welcome. The array is in preference order, the first one found is used. Supported values: kdiff3, kompare, diffuse, meld, vim, code, and more. Other diff programs may work but aren’t tested.
Note for the translators
The Welcome app has already been translated to many languages. If you (yes, you!) feel like translating Welcome to your language, this is the way to proceed:
- Take the latest English translation file https://raw.githubusercontent.com/endeavouros-team/PKGBUILDS/master/eos-translations/translation-en.bash
as the base for your translation.
- In the beginning of this file, change the two-letter value of the variable
_tr_langto your language (you may get it with command:
- If you need certain special characters (to show them properly in Welcome), look how variables
_questionare defined (search the internet for the value codes). You can create new such variables if needed.
- Then simply change the quoted strings on lines starting with
- Keep the line numbers as they are in the English translation file; this helps with future changes.
When your new translation file is ready for publishing, you have many options how to deliver it to us:
- If you have a github account (or want to create one), simply make a pull request.
- Create an account into the EndeavourOS forum: https://forum.endeavouros.com, and send the translation as a (private) message to me.
- You can also use command:
cat "translation-xx.bash" | curl -F 'f:1=<-' ix.io
and send the returned URL as a (private) message to me.
Please note that not everything is translated in Welcome or in Welcome’s helper programs. We are working on it, but obviously it takes time.
How to know when more stuff needs to be translated?
There are some symptoms to notice when there are more stuff to be translated:
- The contents of the English translation file (mentioned above) has changed.
- When you start Welcome at the terminal (command:
eos-welcome), you’ll see a “warning” like this:
Info: translation issues detected, see file '/tmp/translations-X3yzK.errlog'.
Note that the warnings in the log file only indicate that some text translations are missing. By default, English translations are provided for those texts.
The Welcome app will become more powerful over time.
The purpose of Welcome is not to give all possible help in all possible situations, but simply help to go in the right direction without a great hassle. And Welcome should provide more useful features in the future, so it is not a helper only in the beginning, but a truly useful app to have and keep using.
Update: 2020-Jul-15: added info about personalizing Welcome
Update: 2020-Jul-25: new pictures and more info
Update: 2020-Aug-11: added info for the translators
Update: 2020-Sep-04: text fixes, new button: Change Display Resolution
Update: 2020-Dec-11: added info about the Pacdiff button
Update: 2020-Dec-12: minor change to Pacdiff support
Update: 2020-Dec-15: updated file paths at Note for translators