How to Start Applications Automatically as Linux Boots

Michael Tunnell 04-11-2015

Are you manually loading applications each time you turn on your computer? Wouldn’t you rather have them automatically load instead? Here’s how to auto-start applications in Linux.


Starting Applications at boot in Linux is fairly easy to do but the methods change depending on the distro and desktop environment you’re using. This article is will show you how to do it on all of the main environments of Linux. The following sets of instructions are not all going to be relevant to everyone so please scroll to the portion that is most relevant to your system. The sets of instructions include: Unity (Ubuntu), Cinnamon (Linux Mint), GNOME, KDE, MATE, LXDE, XFCE, Moksha (Bodhi Linux), Budgie (Solus), and Pantheon (elementaryOS).

Benefits of Auto-starting Applications


Auto-starting Applications, also known as Startup Applications, is the process of setting specific programs to automatically launch themselves when you turn on your computer. This is a great time saver if you find yourself launching the same applications every day when you first boot your computer. For some users, this is possibly more useful for running background applications so you can always have specific tools available to you. A great example of a background application to run is KDE Connect Using KDE Connect to Sync your Android Device with Your Linux Computer Have you ever wished your Android devices and your Linux computers worked together more seamlessly? KDE Connect is something you should check out because it alleviates the headaches of the multi-device experience. Read More , or the KDE Connect Indicator, for syncing your computer with your Android phone.

The process of setting applications to start automatically in Linux is a bit confusing because every distribution (distro) and desktop environment (DE) does it differently. In some cases, the process is very easy where you just select an application from a list of what you have installed but other times you have to know the exact commands used to launch an app.

Unity, Ubuntu’s Default Environment

Ubuntu is probably the most commonly suggested distro for beginners Ubuntu: A Beginner's Guide Curious about Ubuntu, but not sure where to start? Everything you could possibly need to get started with the latest version of Ubuntu is right here, written in easy-to-understand, plain English. Read More which makes it odd that this feature is not user-friendly in Unity. Auto-starting applications is not available in the System Settings, unfortunately; instead it requires you to search the Dash for the Startup Applications tool.


In the Startup Applications tool, click the Add button on the right side of the window. Ubuntu doesn’t provide any convenience for selecting applications so you have two options to continue, 1.) Enter the name of the application and the command to launch it (if you know it) or 2.) Click the Browse button, from the sidebar choose Computer and navigate to the /usr/bin folder. The /usr/bin folder contains a binary file for launching all programs installed in your computer so this could be overwhelming for some, watch the video below for the guide.

In the video above, I demonstrated how to search for the app in that you navigate to the /usr/bin folder and just start typing the first few letters of the binary name.

Cinnamon, Linux Mint’s Default Environment

Linux Mint‘s method of Autostarting Applications is a nice mix of GNOME’s simple approach, Ubuntu’s technical approach and some extra custom features. From the Mint Menu, open System Settings and choose Startup Applications from the Preferences section. At the bottom of the window, click Add and then Choose application. In the next window, you can scroll through the list and select the application you want or you can just start typing to reveal the hidden search function. Lastly, click Add Application to add it to the list.


Once the application has been added, you will see an ON/OFF Toggle and Delay controls along with the entry. The delay setting can be used in many different ways; I use it to set the order of the applications. To change the delay, select the application and click Edit at the bottom of the window. On the next window, use the Minus (-) or Plus (+) buttons to change the number, or just type in a number. At times, Linux Mint provides an attention to detail that is often one of the reasons it is considered an Ubuntu Killer Is Linux Mint 17 "Qiana" The Ubuntu Killer? The latest version of Linux Mint, the 17th release codenamed "Qiana", is out! It's a great alternative for people leaving Windows as well as those who just don't quite like Ubuntu. Read More to some.

GNOME via Ubuntu GNOME

GNOME does not provide a default feature for Auto-starting Applications but the GNOME Tweak Tool has corrected this. The GNOME Tweak Tool is available by default in almost all GNOME based distros so you shouldn’t be required to install it. I used Ubuntu GNOME in the demo video but the instructions are relevant for all GNOME users as the GNOME Tweak Tool is universally available. Although, if you are using Ubuntu GNOME then you can find Ubuntu’s tool in the GNOME Overview as well.


Clicking on Activites at the top left (or press Super aka Windows key) will open the GNOME Overview. Using the Overview Search, type in tweak and launch the Tweak Tool. You can also scroll through the applications grid if you’d prefer. Click Startup Applications on the left sidebar and then the large Plus button to open a new dialog window. You can select the application by scrolling through the list or start typing the name to reveal the hidden search feature.

KDE via Kubuntu

The KDE Project is currently transitioning to their latest version, Plasma 5, which is the version Kubuntu 15.10 uses is demoed in the video below. The process for managing startup applications in KDE is identical in functionality in both Plasma 5 and KDE4 so the video only demonstrates Plasma 5.

In the Application Launcher, navigate to the Computer section and open System Settings application. Startup and Shutdown, in the Workspace section, is where you’ll manage the entries. In Autostart, selected by default, click Add Program to scroll through the categorized list of applications or to search for the application. Clicking OK to continue will present you with a summary of what you are about to add, click OK on that window to complete the process. Plasma also allows you to auto-start custom scripts so to do that click Add Script, click the square browse and navigate to your script.


MATE via Ubuntu MATE

Open the Control Center from the System menu at the top left of the screen and from there click Startup Applications. If you are using Ubuntu MATE then you may have changed the look of the system via the Interface Switcher. If so, the method of opening the Control Center may be different for you.

MATE based distros use the same tool that Ubuntu (with Unity) does to manage the auto-starting applications so the process is the same. In the Startup Applications tool, click the Add button on the right side of the window. Enter the name of the application and the command to launch it, if you know it, or Click Browse, choose Computer from the sidebar and select the application in the /usr/bin folder.

LXDE via Lubuntu

LXDE’s solution to auto-starting applications is somewhat hidden inside of another tool, LXSession settings. From the LXDE main menu navigate to Application and Settings > Preferences > Default applications for LXSession. The Autostart tool, selectable on the left sidebar, in LXDE is rather limited so you will need to know the command of the application that you want to add.

LXDE does not provide a way to browse for binaries in the Autostart tool but Lubuntu has provided a solution to this via PCManFM (file manager). In PCManFM, the Applications places entry, on the left sidebar, will present a collection of categories. Browse through the categories until you find the App, right click the app and choose Properties from the context menu. Click the Desktop Entry tab in the Properties window, copy the command inside the Command field, paste it into the Autostart field in LXSession, and finally click + Add.

XFCE via Xubuntu

XFCE shares the same Startup Application tool for adding applications that Ubuntu and MATE use but the management of the list is done through a settings tool called Session and Startup.

In the Whisker Menu, go to the Settings category and open the Session and Startup tool. In the Session and Startup, go to the Application Autostart tab to auto-start entries and from there click Add on the bottom left. At this point you will be presented with the same Startup Tool that Ubuntu and MATE use. Click the Add button on the right side of the window. Enter the name of the application and the command to launch it, if you know it, or Click Browse, choose Computer from the sidebar and select the application in the /usr/bin folder.

Moksha via Bodhi Linux

Moksha is a lightweight focused desktop environment, forked from Enlightenment, made by the Bodhi Linux project. Moksha’s auto-starting applications process appears to be a unique implementation to the Moksha desktop.

In the Moksha menu, navigate to Settings > All > Apps > Startup Applications. The System tab is for managing system utilities to the startup sequence, the Applications tab is for managing applications and the Order tab allows you to control the order of the startup entries. Click on the Applications tab, select an application from the list, and click Add to add it to the startup sequence. There doesn’t appear to be a way to add custom commands or scripts in the tool so if the utility or application is not found automatically it may require further research to add it. If you know of a way to do this already please post in the comments below.

Budgie via Solus Project

The Solus Project has developed a stunning desktop environment Five Stunning Ubuntu Alternatives That You've Never Heard Of We've compiled this list of five utterly stunning Ubuntu alternatives for you to watch demos of, and perhaps download and install on your Linux computer. Read More , that’s a fork of GNOME 3, called Budgie. Due to Budgie being a fork of GNOME, the Startup Applications are controlled in Budgie/Solus via the GNOME Tweak Tool.

Type tweak at the top of the Budgie menu and open the Tweak Tool. Click Startup Applications on the left sidebar and then the large Plus button to open a new dialog window. You can select the application by scrolling through the list or start typing the name to reveal the hidden search feature.

Pantheon via elementaryOS

Pantheon is the GTK+ based desktop environment Elementary OS Freya: The Next Major Update To A Rising Linux Distro Now, we're getting a glimpse at the first beta of the next released, codenamed "Freya". What's new in Freya, and is it worth upgrading or switching to it from other distributions? Read More created by the elementaryOS and while Pantheon feels similar to GNOME 3, it is not a fork of GNOME, so the management of Auto-starting Applications is similar but it also quite a bit different.

From the upper rightmost portion of the Wingpanel, choose System Settings in the system (power icon) menu. Choose Applications > Startup from the System Settings to navigate to the startup tool. You’ll see Plus (+) and Minus (-) buttons in the bottom left of the Startup tool. Select an app from the list, search for an app at the top of the list, or enter a custom command at the bottom of the list. Once you’ve added items to the list you can disable them with the activity toggle or remove them via the Minus (-) button at the bottom.

Making Linux Life Easier with Automation

What applications do you auto-start when your computer boots? Do you have any questions about the process for any of the desktop environments? Let us know in the comments below.

Affiliate Disclosure: By buying the products we recommend, you help keep the site alive. Read more.

Whatsapp Pinterest

Leave a Reply

Your email address will not be published. Required fields are marked *

  1. Marcus
    March 27, 2017 at 11:28 pm

    do you have an Auto-starting Applications process for debian

    All process I found online are not easy

    Thanks for any help you have

    • Michael Tunnell
      March 28, 2017 at 1:02 am

      These are based on the DEs because it just depends on the DE that you are using. You could also do it with systemd if you wanted.

      • Marcus
        March 28, 2017 at 3:42 pm

        Thanks I watched all the videos very closely I found the one that is similar to the one I have and it works. Awesome site there are very little answers on the net on the subject that are easy to understand. This was perfect

        Thanks again

        • Michael Tunnell
          March 29, 2017 at 1:12 am

          You're welcome, I'm happy to have helped.

          I no longer write for this website so if you'd like to keep up with the content I provide you can check out my site at

          This website has a lot of other great writers though so feel free to continue reading here. :)

  2. Bob
    June 21, 2016 at 10:51 pm

    Will this start an app at boot, or just when you log into an account? I want an app to start when the computer starts even if no one is logging in.

  3. Lauscher
    March 7, 2016 at 12:08 pm

    To make things better: You don't need to user the folder /usr/share/applications, the better way is to use ~/.local/share/applications.

  4. Lauscher
    March 7, 2016 at 12:34 am

    In Moksha / Enlightenment, only those applications listet in /usr/share/application can be seen in the list of applications for autostart (and in other lists, too, for example, if you want to create a starter in ibar or mark an application as a favorite).
    The way to manage this is to create a .desktop file in /usr/share/applications that runs the wished application or script.
    For example, I created a file /usr/share/application/moksha-autostart.desktop with the content:
    [Desktop Entry]
    Name[de_DE]=Moksha Autostart in ~/bin
    This starts a script in my home folder with all my favorite autostart applications.

  5. 2_OK
    November 12, 2015 at 10:17 am

    Do you realy need me to show some kernel access now!

  6. Anonymous
    November 5, 2015 at 5:08 am

    Nice article. You should also mention xinitrc method. Which works on all desktops.

    • Michael Tunnell
      November 5, 2015 at 5:46 am

      Thank you for your comment and sharing this suggestion but I think that this is a viable solution for most users because it requires too much previous technical knowledge to utilize it.

    • Anonymous
      November 9, 2015 at 11:42 pm

      @mohit Always nice to see the older, more universal methods mentioned that do not require a GUI. It would be a nice addition to the article. Gives beginners an understanding of the underpinnings. Good suggestion.

  7. Anonymous
    November 4, 2015 at 9:52 pm

    There's the rc.d directory which you can run command. What I believe that these mostly work with programs, not scripts or commands that changes a file. However, rc.d directory doesn't work in my Debian box so I uses the init.d directory instead, but this requires you to manually create a bash script.

    • Michael Tunnell
      November 5, 2015 at 5:48 am

      Thank you for your suggestion but manually creating bash scripts is bit too extensive of a barrier to entry to be included in this kind of article. I do think people should check out init systems methods as well as other solutions if they are wanting to learn more of the core of the system.

      • Anonymous
        November 9, 2015 at 11:47 pm

        @Michael It might give people a better understanding of what is going on. Just another approach. More'n one way to skin a cat ;> I agree including scripts and terminal sessions is a
        bit more; perhaps more in needed to better inform. Cheers.

        • Michael Tunnell
          November 10, 2015 at 4:01 am

          This website is targeted to a particular audience that is not necessarily comfortable with the command-line so mentioning these tools would not benefit the target audience. These tools are great and I suppose I could have mentioned them in a passing by approach without going into detail. I think I will do that with my future articles, thanks for the comment.