Trending February 2024 # Android Ringtones: How To Edit, Create And Set Custom Tones # Suggested March 2024 # Top 2 Popular

You are reading the article Android Ringtones: How To Edit, Create And Set Custom Tones updated in February 2024 on the website We hope that the information we have shared is helpful to you. If you find the content interesting and meaningful, please share it with your friends and continue to follow and support us for the latest updates. Suggested March 2024 Android Ringtones: How To Edit, Create And Set Custom Tones

It wouldn’t be news to you that you can easily change the ringtone of your Android device by going into the Settings followed by Sound and Notifications. However, in this tutorial, we will tell you how to further step-up your relationship with the ringtones and notifications of your Android device.

You know what makes life easy? If you set a custom ringtone for your favorite contacts. Then, whenever you get a call from them, you don’t need to move to check your phone you instantly know who is calling. Though, of course, you would have to move if you want to answer the call.

Here are the steps to set a custom ringtone for any contact:

Open the Contacts app and navigate to the contact that you want to set a custom ringtone.

Open the individual contact and tap the three vertical dots at the top right corner. From the menu, select the “Set ringtone” option. A popup will open with the preinstalled ringtones of your device. Tap the ringtone that you want to keep for that contact and hit OK.

However, in some devices, you won’t find the “Set ringtone” option under three vertical dots. For these devices, tap the pencil icon next to it. You will then see a field with the name “Ringtone”. Tap it to set the ringtone for your contact. In case, the “Ringtone” field is missing, tap the “Add Another Field” option followed by ringtone.

Also read: How to create video slideshow of photos on Android

How to create your own ringtone out of a song or music file

Liked a song and want to keep a portion of it as your ringtone, but don’t know how to? Well, you are not alone. Many people are sailing in the same boat. Although some of the devices have a built-in feature to crop a music file, others are not so lucky. But, hey, don’t worry. With Android, there is always a way.

In case you never bothered to check or never anticipated the presence of ringtone maker apps on Google Play Store, let me tell you, Google Play Store is loaded with Ringtone maker apps. With almost same user interface, all the apps also have identical working. Some of the amazing apps are Ringtone maker by Big Bang, MP3 cutter, Ringtone Maker by MeiHillMan. You can use any app you like, but for this tutorial, we are using Ringtone maker by Big Bang.

Here are the steps to create a ringtone from any music file.

Download and install Ringtone maker by Big Bang.

Open the app and tap the three horizontal lines at the top left corner to open the navigation bar. From the menu, tap “Browse”.

If you use another app, you also need to tap the “Browse” option, though the location of “browse” option might be different.

A file browser will open. Scroll down and hit the “sdcard” option for internal memory and “ext storage” for the memory card. (yeah, I know, they have messed up the names). Then, go to the location where your music file is present. Tap the music file to open it.

When the music file opens in the app player, drag the scrollbar to set the start and end time. For accurate timing, tap the plus and minus icon next to the timing at the bottom.

Finally, when you are happy with your audio, tap the Save icon at the top to create a ringtone. You will be asked to name the file and select the type, whether you want to save it as ringtone, notification sound or an alarm. Choose your desired option and hit Save.

Further, you will be asked whether you want to make it your default ringtone or assign it to a contact. Select it as per your need. Your custom ringtone will be automatically applied either as your default ringtone or to a contact, depending on what you selected.

Wasn’t that easy?

Also read: How to recover notifications cleared from notification bar on Android, including Samsung devices

How to add a new ringtone to your device

Many times there are music files on our device that are worth to be kept as a ringtone but they don’t appear in the ringtone list while selecting one. Also, suppose you find a great ringtone on the internet, or perhaps liked a certain ringtone on your friend’s device. How do you make it your default tone? Worry not, my dear friend, let me explain how to do it.

Here are the steps to add a new ringtone to your device:

Open the location where you ringtone is present through a file manager. If nature has denied you the built-in File Manager for your device, head on to the Google Play store and download either a ES File Explorer or Solid Explorer.

Long touch the ringtone and tap on “Cut”.

Navigate to the “Ringtones” folder on your device memory and paste the ringtone.


That’s all you have to do. Now, in the list of ringtones, you will find your new ringtone that you can either set as your default tone or set it for a particular contact.

However, if the ringtone doesn’t appear in the list, reboot your device. That will do the trick.

Also read: Cool hidden features of your Android device

How to add new notification tone for the apps in Android

If you are bored with the default notification tone of the apps, you can make it more lively and exciting by adding new notification tones to your device.

Here are the steps to add new notification tone to your device.

Download the new notification tone or create your own notification tone as described above.

Using File Explorer, head to the location where your new notification tone is present. Similar to the ringtones, long touch the tone and cut it.

Navigate to the “Notification” folder on your device memory and paste the tone. In some devices, if the Notification folder is missing, navigate to the “Media” folder followed by “Audio” folder and finally “Notifications”.

To change the device notifications, head to the Sound and Notification in the setting followed by notification. You will find your new notification in the list. For apps, you would have to change the notification individually, in their own setting.

Enjoy 🙂

You're reading Android Ringtones: How To Edit, Create And Set Custom Tones

How To Create Your Own Custom Ringtones Using Itunes

One of the things that are so great about owning a smartphone is the sheer number of personalization possibilities available. From wallpapers to ringtones to phone protective cases, you have various ways in which to stamp your unique personality onto your phone.

However, with regards to ringtones on an iPhone, the thing I don’t like about the default tones is that they are either annoying or boring. That is why it is essential you make sure that the only ringtones on the phone are ones you have personally selected.

Table of Contents

Create iPhone Ringtones In Four Easy Steps

First, you obviously need to decide what sound you are going to use. It could be a song. It could be your favorite TV show or movie soundtrack. Others use special effects from computer games. It’s entirely up to you. As you can see above, I have chosen to go with the very catchy tune from the Tetris game.

The best place to find that audio is YouTube. When you have found the one you want, you can rip the audio using something like YouTube To MP3 Converter [link removed]. But there are many similar services out there. A simple Google search will turn up more than you could ever possibly choose from.

Now that you have your MP3 file, it’s time to proceed to stage two.

Edit Using Audacity

Now you have your file, it’s time to edit it to iOS specifications. The existing Tetris audio I downloaded is a staggering 10 hours long! Obviously, we don’t need all of that as an iPhone ringtone is only thirty seconds in length – and then it loops back to the beginning. So I need to use the free and open-source Audacity to chop off nine hours, 59 minutes, and 30 seconds off the file.

Download and install Audacity. Then upload the MP3 version of your audio.

Now you have to decide what thirty-second segment you want to have as your ringtone. The beginning of the audio may not necessarily be the best part. For example, some songs start off very quietly or may sound a bit weird. Since you only have thirty seconds for your tone, you obviously want the best part.

So listen to your file in Audacity and clip the thirty-second part you want by dragging it with your mouse or trackpad.

It’s best to make it 28 or 29 seconds to ensure that your clip works without any problems. You can see the timestamp at the bottom of the screen.

Save the selected file to your computer and make sure it is an MP3 file. Audacity will ask you to point it towards something called a “Lame file”, which is necessary for generating new MP3 files. If you don’t have one, or yours doesn’t work for some reason, it will give you a download link for a new one.

Convert To M4R Format

You can’t simply upload the MP3 file and expect it to magically appear in your ringtones section. If you upload an MP3, your iOS device will assume it is a song that belongs in your music section and it will leave it there. To give it ringtone status, you need to convert the MP3 file now to M4R format.

Under “Start”, put 0.01 and for “Stop”, enter the second before the file stops. Since my file is 29 seconds long, I put the end as 28 seconds. Now save it.

To get to M4R, you first have to make an AAC version, which has the file format M4A. This is the format that Apple delivers all iTunes Store purchases in. I know, slightly confusing but bear with me. I’ll get you through to the end.

A second file of the same name will now appear in iTunes. Drag the new AAC file (with the m4a format) to another location on your computer (the desktop is always good). Then delete both audio files from iTunes. But keep iTunes open – you’ll need it again in a minute.

We’ve almost finished. To change the file to M4R, just go to the file on your computer and change the file format to M4R.

Upload To Your iPhone

The file is now finished. To get it onto your iPhone as a ringtone, attach your phone to your computer using a lightning-to-USB cable. When iTunes detects the phone, choose “Manually Manage Music & Videos“.

Now drag the M4R file onto the “On My Device” tab.

Now simply sync iTunes with your phone, and the ringtone will appear under “Sounds & Haptics” on your phone (in the ringtone section). Tap on it to choose it as your default ringtone.

How To Create And Set Up Anemail Account

Create a new chúng tôi email account

Visit chúng tôi in your browser to get started.

 1. Select a suitable username

In the first step, enter the username that you would like to have. In case it is already taken, then try checking for something similar.

 2. Choose a strong password

The next step is setting up your password. This is an important and crucial one, and there are a few guidelines that need to be followed in order to have a strong and safe password. Your password must have at least 8 characters and contain at least two of the following: uppercase letters, lowercase letters, numbers, and symbols.

Also, your password cannot contain the part of your email address that comes before the @ sign. Once you have followed these criteria for setting up your password, your password gets accepted.

 3. Fill in Name, Country and Birthdate

By this stage, you have successfully submitted all the information and details you need to set up your MS Outlook account.

 4. Let’s Captcha

The last standard step that one needs to complete is the Captcha. Basically, the captcha is a computer program that helps to distinguish human from machine output to avoid spam. All you have to do is enter the characters correctly that you see on the screen.

5. Your Microsoft Outlook Account is ready!

It will only take a few seconds to get you started. Congratulations on setting up your account successfully! This is how your Microsoft Outlook account dashboard will now look like.

In the left pane, you will see the New Message tab and folders such as Inbox, Junk Mail, Drafts, Sent Items, Deleted Items, and Archive. In case you wish to search for a particular mail or the name of the contact/recipient; you can do so in the Search box on the top on your dashboard.

Finally, your Microsoft Outlook account is now, ready so ahead and get started!

If you have more than one Microsoft Outlook account and want to sign in with a different account on chúng tôi then this can be done easily. That simply means you will be able to sign in with multiple Outlook accounts on Outlook on the web. The benefit of adding two or more Outlook accounts is you can easily switch to an account without any need to first log out from one account and then log in to another account. The steps are as follows:

Open chúng tôi and login to your account

Outlook sign-in page will open where you need to enter your login credentials.

In the same way, you can add more and more Outlook accounts and switch to any account.

If you want to sign out from a particular account on chúng tôi follow these steps:

Select the Sign out and forget option.

That’s all. Hope it is helpful.

How do I create an Outlook COM email address?

Creating an email address on chúng tôi or Outlook on the web is a very simple process. You need to select a unique username for your email, a strong password, some basic details, etc. This post covers step-by-step instructions to create and set up an chúng tôi email account. You can also create multiple accounts and sign in with a different Outlook account whenever needed.

Is an email address at Outlook COM free?

Yes, creating an email account and using it on chúng tôi is free. The free plan (Free email and calendar) provides 15 GB of Mailbox storage, 5 GB OneDrive storage, web versions of premiums Office apps, etc. You can create multiple free accounts on chúng tôi or Outlook on the web and use them together.

Read next:

Custom Directives In Angularjs: How To Create?

What is Custom Directive?

A Custom Directive in AngularJS is a user-defined directive that provides users to use desired functions to extend HTML functionality. It can be defined by using the “directive” function, and it replaces the element for which it is used. Even though AngularJS has a lot of powerful directives out of the box, sometimes custom directives are required.

In this Angular JS Directive tutorial, you will learn-

How to Create a Custom Directive?

Let’s take a look at an example of how we can create an AngularJS custom directive.

The custom directive in our case is simply going to inject a div tag which has the text “AngularJS Tutorial” in our page when the directive is called.

var app = angular.module(‘DemoApp’,[]); app.directive(‘ngGuru’,function(){

return { } });

Code Explanation:

We are first creating a module for our angular application. This is required to create a custom directive because the directive will be created using this module.

We are now creating a custom directive called “ngGuru” and defining a function which will have custom code for our directive.Note:- Note that when defining the directive, we have defined it as ngGuru with the letter ‘G’ as capital. And when we access it from our div tag as a directive we are accessing it as ng-guru. This is how angular understands custom directives defined in an application. Firstly the name of the custom directive should start with the letters ‘ng’. Secondly the hyphen symbol ‘-‘ should only be mentioned when calling the directive. And thirdly the first letter following the letters ‘ng’ when defining the directive can be either lower or uppercase.

We are using the template parameter which a parameter defined by Angular for custom directives. In this, we are defining that whenever this directive is used, then just use the value of the template and inject it in the calling code.

If the code is executed successfully, the following Output will be shown when you run your code in the browser.


The above output clearly shows that our custom ng-guru directive, which has the template defined for showing a custom text gets displayed in the browser.

AngularJs Directives and Scopes

The scope is defined as the glue which binds the controller to the view by managing the data between the view and the controller.

When creating custom AngularJs directives, they by default will have access to the scope object in the parent controller.

In this way, it becomes easy for the custom directive to make use of the data being passed to the main controller.

Let’s look at an AngularJS custom directive example of how we can use the scope of a parent controller in our custom directive.

var app = angular.module(‘DemoApp’,[]);

app.controller(‘DemoController’,function($scope) { $scope.tutorialName = “Angular JS”;


app.directive(‘ngGuru’,function(){ return { } });

Code Explanation:

We first create a controller called, “DemoController”. In this, we defining a variable called tutorialName and attaching it to the scope object in one statement – $scope.tutorialName = “AngularJS”.

In our custom directive, we can call the variable “tutorialName” by using an expression. This variable would be accessible because it is defined in the controller “DemoController”, which would become the parent for this directive.

We reference the controller in a div tag, which will act as our parent div tag. Note that this needs to be done first in order for our custom directive to access the tutorialName variable.

We finally just attach our custom directive “ng-guru” to our div tag.

If the code is executed successfully, the following Output will be shown when you run your code in the browser.


The above output clearly shows that our custom directive “ng-guru” makes use of the scope variable tutorialName in the parent controller.

Using controllers with directives

Angular gives the facility to access the controller’s member variable directly from custom directives without the need of the scope object.

This becomes necessary at times because in an application you may have multiple scope objects belonging to multiple controllers.

So there is a high chance that you could make the mistake of accessing the scope object of the wrong controller.

In such scenario’s there is a way to specifically mention saying “I want to access this specific controller” from my directive.

Let’s take a look at an example of how we can achieve this.

var app = angular.module(‘DemoApp’,[]);

app.controller(‘DemoController’,function() { this.tutorialName = “Angular”;


app.directive(‘ngGuru99’,function(){ return { controller: ‘DemoController’,

controllerAs: ‘ctrl’,

template: ‘{{ctrl.tutorialName}}’ }; });

Code Explanation:

We first create a controller called, “DemoController”. In this we will define a variable called “tutorialName” and this time instead of attaching it to the scope object, we will attach it directly to the controller.

In our custom directive, we are specifically mentioning that we want to use the controller “DemoController” by using the controller parameter keyword.

We create a reference to the controller using the “controllerAs” parameter. This is defined by Angular and is the way to reference the controller as a reference.

Note: –It is possible to access multiple controllers in a directive by specifying respective blocks of the controller, controllerAs and template statements.

Finally, in our template, we are using the reference created in step 3 and using the member variable that was attached directly to the controller in Step 1.

If the code is executed successfully, the following Output will be shown when you run your code in the browser.


The output clearly shows that the custom directive is especially accessing the DemoController and the member variable tutorialName attached to it and displays the text “Angular”.

How to create reusable directives

We already saw the power of custom directives, but we can take that to the next level by building our own re-usable directives.

Let’s say, for example, that we wanted to inject code that would always show the below HTML tags across multiple screens, which is basically just an input for the “Name” and “age” of the user.

To reuse this function on multiple screens without coding each time, we create a master control or directive in angular to hold these controls (“Name” and “age” of the user).

So now, instead of entering the same code for the below screen every time, we can actually embed this code in a directive and embed that directive at any point in time.

Let’ see an example of how we can achieve this.

var app = angular.module(‘DemoApp’,[]);

app.directive(‘ngGuru’,function(){ return {

}; });

Code Explanation:

In our code snippet for a custom directive, what changes is just the value which is given to the template parameter of our custom directive.Instead of a plan five tag or text, we are actually entering the entire fragment of 2 input controls for the “Name” and “age” which needs to be shown on our page.

If the code is executed successfully, the following Output will be shown when you run your code in the browser.


From the above output, we can see that the code snippet from the template of the custom directive gets added to the page.

AngularJS Directives and components – ng-transclude

As we mentioned quite earlier, Angular is meant to extend the functionality of HTML. And we have already seen how we can have code injection by using custom re-usable directives.

But in the modern web application development, there is also a concept of developing web components. Which basically means creating our own HTML tags that can be used as components in our code.

Hence angular provides another level of power to extending HTML tags by giving the ability to inject attributes into the HTML tags itself.

This is done by the “ng-transclude” tag, which is a kind of setting to tell angular to capture everything that is put inside the directive in the markup.

Let’s take an example of how we can achieve this.

var app = angular.module(‘DemoApp’,[]);

app.directive(‘pane’,function(){ return {

transclude:true, scope :{title:’@’}, }; });

Code Explanation:

We are using the directive to define a custom HTML tag called ‘pane’ and adding a function which will put some custom code for this tag. In the output, our custom pane tag is going to display the text “AngularJS” in a rectangle with a solid black border.

The “transclude” attribute has to be mentioned as true, which is required by angular to inject this tag into our DOM.

In the scope, we are defining a title attribute. Attributes are normally defined as name/value pairs like: name=”value”. In our case, the name of the attribute in our pane HTML tag is “title”. The “@” symbol is the requirement from angular. This is done so that when the line title={{title}} is executed in Step 5, the custom code for the title attribute gets added to the pane HTML tag.

The custom code for the title attributes which just draws a solid black border for our control.

Finally, we are calling our custom HTML tag along with the title attribute which was defined.

If the code is executed successfully, the following Output will be shown when you run your code in the browser.


The output clearly shows that the title attribute of the pane html5 tag has been set to the custom value of “Angular.JS”.

Nested directives

Directives in AngularJS can be nested. Like just inner modules or functions in any programming language, you may need to embed directives within each other.

You can get a better understanding of this by seeing the below example.

In this example, we are creating 2 directives called “outer” and “inner”.

The inner directive displays a text called “Inner”.

While the outer directive actually makes a call to the inner directive to display the text called “Inner”.

var app = angular.module(‘DemoApp’,[]);

app.directive(‘outer’,function(){ return {

restrict:’E’, }});

app.directive(‘inner’,function(){ return {

restrict:’E’, } });

Code Explanation:

We are creating a directive called “outer” which will behave as our parent directive. This directive will then make a call to the “inner” directive.

The restrict:’E’ is required by angular to ensure that the data from the inner directive is available to the outer directive. The letter ‘E’ is the short form of the word ‘Element’.

Here we are creating the inner directive which displays the text “Inner” in a div tag.

In the template for the outer directive (step#4), we are calling the inner directive. So over here we are injecting the template from the inner directive to the outer directive.

Finally, we are directly calling out the outer directive.

If the code is executed successfully, the following Output will be shown when you run your code in the browser.


From the output,

It can be seen that both the outer and inner directives have been called, and the text in both div tags are displayed.

Handling events in a directive


The syntax of the link element is as shown below


link: function ($scope, element, attrs)

The link function normally accepts 3 parameters including the scope, the element that the directive is associated with, and the attributes of the target element.

Let’s look at an example of how we can accomplish this.

var app = angular.module(‘DemoApp’,[]);

app.directive(‘ngGuru’,function(){ return {

link:function($scope,element,attrs) { });} }});

Code Explanation:

We are using the link function as defined in angular to give the ability of the directives to access events in the HTML DOM.

Here we are defining our div tag to use the ng-guru custom directive.

If the code is executed successfully, the following Output will be shown when you run your code in the browser.



One can also create a custom directive which can be used to inject code in the main angular application.

Custom directives can be made to call members defined in the scope object in a certain controller by using the ‘Controller’, ‘controllerAs’ and ‘template’ keywords.

Directives can also be nested to provide embedded functionality which may be required depending on the need of the application.

Directives can also be made re-usable so that they can be used to inject common code that could be required across various web applications.

Directives can also be used to create custom HTML tags which would have their own functionality defined as per the business requirement.

How To Create, Edit And Delete A Table Relationship In Microsoft Access

In Microsoft Access, a Relationship helps you to merge or link data from one table to another. Relationships allow the user to create Queries, Forms, and Reports. When tables are created for each topic in a database, you must place common fields into the table related and form a relationship with them for information to be brought together again.

Create, Edit, Delete a Table Relationship in Access

There are three types of Relationships:

One-to-One Relationship: One-to-One Relationship is the simplest kind of Relationship and the least common because the information related is stored in the same table. It links one table to a single record in another table; Primary Keys links tables. One- to- One Relationship can connect a table with many fields together and separate a table for security reasons.

A One-to-Many relationship: One-to-Many Relationship is the most common Relationship; it links each record in one table to several records in another table. Only one of the fields been linked can be the Primary Key, and the Primary Key must have one record for many records in another table.

Many-to-Many relationships: Many-to-Many Relationship requires a Junction Table, which includes the Primary Key column of the two tables you want to connect.  Many -to Many Relationship allows you to connect each row of one table to many rows in another table.

Why use table relationships in Access?

Table Relationships updates your form and report designs – When you design a form and report, a Relationship is needed for Access to gather the information that can be placed in the form or report you have created.

Table Relationships updates your query design – For records to work from more than one table, a query must be created to join these tables. The query works by matching the values in the first table’s primary key field with the foreign key in the second table.

Referential Integrity can be enforced in a table relationship – Referential Integrity helps to prevent orphan records in your database. An orphan record is a record with reference to another record that does not exist.

In this article, we are going to explain:

How to Create a Relationship in Microsoft Access

How to Edit a Relationship in Microsoft Access

How to Delete a Relationship in Microsoft Access

1] How to Create a Relationship in Microsoft Access

The Edit Relationship dialog box will be seen again with your selected choice; press create. There is also a shortcut option where you can drag the Primary Key from one table to another table; any table linked must be related to the Primary Key. This will form a relationship between the two tables.

2] How to edit relationships in Microsoft Access

You can modify your Relationships in Microsoft Access; here are a few steps in doing so.

Double-tap on the Relationship Line, and the Edit Relationship dialog box will show up.

Make whatever changes you want to make.

3] Deleting Relationships in Microsoft Access

To Delete a Relationship, you must remove the line from the two tables; these are the measures.

A dialog box will pop up asking you ‘if you are sure you want to permanently delete the Relationship.’

Related read: How to build Tables with Table Designer in Access.

How To Easily Create A Custom Lightweight Desktop Environment


When you run Gnome, you’re not running a single application. Gnome launches Metacity (optionally Compiz) to handle window management, gnome-panel to serve as the panel and menu system, and various applets and tools for things like power management and Bluetooth support. Each of these is independent of the others and can be replaced or launched on its own.

What we’ll be doing today is specifying our own list of applications (window manager, dock, etc) to run on login, completely bypassing the likes of Gnome and KDE in favor of our custom apps. There are a few methods of achieving this, and the one demonstrated here was chosen to be functional, simple, and not very distribution-specific.

Designing Your Desktop

To create a functional DE, you’ll need a few basic parts:

Window manager (Metacity, Compiz, etc)

Application launcher (Gnome-Do, Kupfer, etc)

Panel/Dock (Docky, Cairo Dock, PyPanel, etc)

Wallpaper manager (bsetroot, hsetroot, etc)

Optional panel applets, desktop widgets, etc

This guide will use Compiz, Gnome-Do, Cairo Dock (with applets), and hsetroot to achieve all the needed functionality. Using Compiz as the base window manager gives us the full set of Compiz plugins like Expo and Zoom. All those packages should be available in the standard repositories of most distributions. Ubuntu users can fetch them from the Ubuntu Software Center or with the terminal command:


apt-get install

compiz compiz-plugins gnome-do cairo-dock hsetroot

Most of these applications have been discussed in detail on MakeTechEasier. Use our search box to gather more information on which tool is the best for your needs.

Some other usable setups could include dropping the dock/panel entirely and using Gnome-Do for all app launching needs, or adding something like Conky or Google Desktop for system monitoring.

Creating the List

Now that you’ve got an application chosen for each of the roles above, we can begin creating a list so that they will be run on login. Begin by opening any text editor of your choice, and writing out the names of the programs to be run. End each of the lines (except the last) with a &. This symbol tells Linux to run the program in the background and move on to the next item. Without the &, it would run the first line and wait until that program was completed before running the next. That could, for example, prevent the dock from loading until after the window manager is closed – clearly not what we want.

When finished, save the file to any directory you choose (your home is fine) and take note of the file’s name and location. As my name is Josh, I have the file saved in chúng tôi

Adding to GDM list

In what I’m sure must be amazing coincidence, we recently wrote a detailed guide on precisely how to edit the GDM Sessions list to let you launch your own desktop environment.

In short, you’ll want to (as root) create a new file in the /usr/share/xsessions directory. The file should end with the .desktop extension, and follow a template similar to the following:

The only really important lines for this scenario are Name and Exec. Name must uniquely identify your DE so that you can recognize it in the GDM Sessions list. Exec must be the name of the file we created in the previous step, such as


If you’ve followed each of these steps, you created a list of applications you wanted in your DE, saved that list (with appropriate ampersands) into a script, then created a launcher in /usr/share/xsessions to start that script from GDM. Hopefully, your choices have left you with a feature-complete and beautiful desktop. Not only should it meet your specific needs, but there’s a good chance it’ll be far more responsive than a monolithic desktop system like Gnome.

Joshua Price

Josh Price is a senior MakeTechEasier writer and owner of Rain Dog Software

Subscribe to our newsletter!

Our latest tutorials delivered straight to your inbox

Sign up for all newsletters.

By signing up, you agree to our Privacy Policy and European users agree to the data transfer policy. We will not share your data and you can unsubscribe at any time.

Update the detailed information about Android Ringtones: How To Edit, Create And Set Custom Tones on the website. We hope the article's content will meet your needs, and we will regularly update the information to provide you with the fastest and most accurate information. Have a great day!