Trending February 2024 # How To Easily Create A Custom Lightweight Desktop Environment # Suggested March 2024 # Top 3 Popular

You are reading the article How To Easily Create A Custom Lightweight Desktop Environment updated in February 2024 on the website Kientrucdochoi.com. 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 How To Easily Create A Custom Lightweight Desktop Environment

How?

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:

sudo

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 customDE.sh.

Conclusion

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.

You're reading How To Easily Create A Custom Lightweight Desktop Environment

Easily Create Custom Maps Using These 4 Tools

Maps can be very productive for both individual and business use. They can guide you to the right location without any need of asking directions or help your customers easily reach your business. If you frequently use maps, then you might like to try these custom maps that are specially customized for your needs.

There are many services that will let you customize a map of any area to make it intuitive. You can add marks, track packages, define routes, add text and much more. To help you create custom maps, we are going to list the best tools for this purpose.

Their free account will only let you customize a single map with a limit of ten markers. You can opt for a paid account ($39/month) to get full features with unlimited maps and markers along with the ability to geocode up to 1000 locations per month.

2. UMapper

UMapper is another very intuitive custom map tool that offers reliable service for both personal and commercial use. For personal use, you can basically use UMapper for free without any kind of hard restriction (UMapper Logo will be applied), but you will have to opt for the premium version for commercial use and additional features.

UMapper will let you add routes, marks, lines, polygons, circles, pictures, audio, turn-by-turn navigation and text to specific locations. You can save the map locally or in the cloud storage and even embed it on your website. The premium account is charged per map views, costing $0.00025/view.

3. GmapGIS

If you are looking for an extremely simple tool that is also free to use, then GmapGIS is a great choice. Accessing the website will directly lead you to map editing (no other drama), and you can start editing instantly. The navigation is very fast and you can add lines, rectangles, markers, polygons and text, etc. to customize the map.

You can save the map as text or a KML file or get a link to share the map with anyone online. GmapGIS is also capable of measuring distance to any specific area, adding traffic details or finding information such as street address or your Home location.

4. Scribble Maps

Scribble Maps is a very attractive custom map making service that offers most of its features for free. You can do all the common map editing like calculate distance, add lines, edit overlays, draw, add polygons, add marks and text and easily change the color of all the edits.

You can create a map and save/share it without any registration, but registration will let you share maps under your name. The paid version will let you remove the Scribble Maps watermark and provide more security and privacy to your data.

Above are the best free and paid tools for customizing maps. Most of the features are the same, so going for a free tool will be a better choice. However, you can always go for paid subscriptions if you think you really need the paid features.

Karrar Haider

Karrar is drenched in technology and always fiddles with new tech opportunities. He has a bad habit of calling technology “Killer”, and doesn’t feel bad about spending too much time in front of the PC. If he is not writing about technology, you will find him spending quality time with his little family.

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.

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.

Output:

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.

Output:

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.

Output:

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.

Output:

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.

Output:

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.

Output:

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

Syntax:

The syntax of the link element is as shown below

ng-repeat

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.

Output:

Summary

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 A Custom Gradient In Photoshop (Step By Step)

When you’re working with the gradient tool in Photoshop, being able to create a custom gradient opens up way more of the tool’s potential. So today, we’ll dive into how to do just that, along with how to save your custom gradients for later use.

But if you are not interested in creating tons of gradients from scratch, I’ll touch on a few places to find pre-made Photoshop gradients for free online too!

Let’s get started.

How To Create A Custom Gradient In Photoshop Step 1: Create Or Open The Document You Want To Apply The Gradient To

First, open or create a document of the size of your preference. You will apply the gradient to this document. In my case, I made a document of 3000 x 2000 pixels.

Then, go to the Foreground/Background swatches at the bottom of the Toolbar. The foreground swatch is the one in the front, and the background is in the back. These will be the colors of your default gradient. You can change those later within the gradient editor if you want, but it’s a good idea to do it beforehand.

Within the color picker, choose a color you like. In my case, that was the blue shade below.

Repeat the process above to change the background swatch color.

Step 2: Enable The Gradient Tool (G)

With the desired colors chosen, enable the Gradient Tool (G) in the Toolbar.

Step 3: Customize Your Gradient In The Gradient Editor

The Gradient Editor gives you many customization options. It’s a complete resource to create the gradient that looks exactly as you want.

The first section of the Gradient Editor is the Presets. The presets are grouped in folders.  

In the Basics folder, you can find the default gradient based on your foreground and background colors. You can also find a gradient that goes from the foreground color to transparent. There is also a basic gradient there that goes from black to white.

The other folders are divided into groups of colors or themes. For example, you can find folders with green shades and colors based on common cloud colors.

Moving down the Gradient Editor, you can find a gradient bar containing the foreground and background color you previously chose by default.

The arrows and blocks under the gradient bar are color stops, representing each color that composes the gradient.

Using the Smoothness slider, you can control how harsh or smooth the transition between the colors in your gradient is. The lower this parameter is, the more blended the colors will look.

Add as many colors as you want to the gradient until your gradient looks as you like. In my case, I added four colors.

Step 4: Save Your New Custom Gradient As A Preset

Your new gradient preset will appear at the bottom of the gradient presets section.

Step 5: Locate Your Custom Gradient After Saving It

After saving your gradient, you can access it at any time in the future by doing the following:

Now, scroll down the list of gradient presets to find yours. It will likely be at the bottom of the list if you’ve just saved it.

Step 6:  Apply The Gradient You Created

After you have created your gradient, applying it in a document or photo is easy.

You can control the appearance of your gradient by choosing a different style before applying it. To do this, select one of the Gradient types in the Options Bar.

The Linear gradient applies the gradient from one point to another in the area you are using it.

The Radial gradient applies the gradient in the shape of a circle.  

The Angle gradient applies a gradient with a focal point that extends itself in an angular direction.

The Reflected gradient creates a gradient that goes from the first color of the gradient to its end color. However, it also places the gradient’s end color on both sides, creating a mirror effect.

Lastly, the Diamond gradient creates a gradient in the shape of a diamond.

Where To Get Additional Custom Gradients For Photoshop

You won’t always have time to create a stunning gradient. That’s why it’s always a good idea to store extra gradients when needed.

I selected three great sources of free gradients so you can download them to use in your projects.

Brusheezy is a popular website that offers thousands of free downloadable Photoshop resources.

Even though the focus of this website is providing brushes, it also offers other resources, and gradients are among them. You can find a variety of gradients on this website, such as metallic gradients, gold gradients, and gradients sorted by themes, like floral gradients and photo aging gradients.

Ps files is dedicated to sharing Photoshop resources. You can find anything from brushes, flyers, and text effects on this website. All resources there are free to download and are uploaded by its members. You can join the website if you want and share your own resources too!

Gradients on the website have their own section. You can find many high-quality gradients there. Browsing the website, you can find stunning packages with hundreds of preset gradients.

Graphics Fuel is an excellent source of graphics, both free and premium. There you can find lots of design freebies, including PSD files and icons. Beyond that, they also publish design articles, so you can keep up with the latest trends and get more informed about the design world.

A quick search on the website can uncover some valuable gradient sources for free. For example, I found a nice collection of 24 vibrant gradients that can make your next project stand out.

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.

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.

Voila!

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 🙂

Update the detailed information about How To Easily Create A Custom Lightweight Desktop Environment on the Kientrucdochoi.com 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!