πŸ“’ New video: See the new features in Ubuntu 25.04

Celebrate Christmas in Linux Way: Give Your Linux System a Christmas Touch

'Tis the season for celebration. Customize your Linux desktop with the Christmas spirit.
Warp Terminal

It’s the holiday season, and many of you might be celebrating Christmas already.

From the team of It’s FOSS, I would like to wish you a Merry Christmas and a happy new year.

To continue the festive mood, I’ll show you some really awesome Linux wallpapers on Christmas theme. I’ll share a few tips to give your Linux system a Christmas touch.

Let it snow on your Linux desktop [for GNOME users]

🚧
It seems the extensions are not actively updated and they don't work as well as they did earlier.

Nothing makes Christmas more β€œChristmasy” than the snow flurries. If you are using GNOME, you can let it snow on your desktop as well.

Check which desktop environment you use. If it is GNOME, then you can use extensions to drop snowflakes on your desktop.

If you are not familiar with it, please read my detailed guide on using GNOME Extensions first. Repeating the steps here will derail the topic.

There are three GNOME Extensions that make snow flurries on your desktop.

  • Snow (last updated with GNOME Shell 4.42)
  • Let it Snow (Last updated with GNOME 4.44)
  • gsnow (last updated with GNOME 3.10)

While β€˜Let it Snow’ has more features where you can control the number of snowflakes or make it not snow on the active window, the Snow extension doesn’t have any configuration options.

You just have to activate this extension and enable it to make the snow fall on your desktop.

Snow On Linux Desktop
βœ‹
I didn’t notice any unusual surge in CPU consumption or RAM usage. Still, I would recommend you to be vigilant and keep an eye on the system stats with the task manager in Linux. Disable the extension if you see high CPU usage with the extension. You don't want the snow to melt with the hot computer, do you? πŸ˜‰

Change terminal prompts with Christmas goodies [For expert users]

Here’s another way for Christmas makeover. Change the prompt with Christmas tree, snowflake and gifts.

Linux Terminal Christmas

Now, if you are not too comfortable with the terminal, I suggest skipping it. If you are a regular Linux command line pro who knows what’s .bashrc file and how to edit these files in the terminal, here’s what you need to do.

Copy this code:

# print the git branch name if in a git project
parse_git_branch() {
  git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)//'
}
# set the input prompt symbol
ARROW="❯"
# define text formatting
PROMPT_BOLD="$(tput bold)"
PROMPT_UNDERLINE="$(tput smul)"
PROMPT_FG_GREEN="$(tput setaf 2)"
PROMPT_FG_CYAN="$(tput setaf 6)"
PROMPT_FG_YELLOW="$(tput setaf 3)"
PROMPT_FG_MAGENTA="$(tput setaf 5)"
PROMPT_RESET="$(tput sgr0)"
# save each section prompt section in variable
PROMPT_SECTION_SHELL="\[$PROMPT_BOLD$PROMPT_FG_GREEN\]\s\[$PROMPT_RESET\]"
PROMPT_SECTION_DIRECTORY="\[$PROMPT_UNDERLINE$PROMPT_FG_CYAN\]\W\[$PROMPT_RESET\]"
PROMPT_SECTION_GIT_BRANCH="\[$PROMPT_FG_YELLOW\]\`parse_git_branch\`\[$PROMPT_RESET\]"
PROMPT_SECTION_ARROW="\[$PROMPT_FG_MAGENTA\]$ARROW\[$PROMPT_RESET\]"
# set the prompt string using each section variable
PS1="
πŸŽ„ $PROMPT_SECTION_SHELL ❄️  $PROMPT_SECTION_DIRECTORY 🎁 $PROMPT_SECTION_GIT_BRANCH 🌟
$PROMPT_SECTION_ARROW "

And add it to the end of your ~/.bashrc file. Save the file, close it and then open another terminal window or shell. You should have a changed command line prompt now.

To get back to normal, delete those lines you added from the ~/.bashrc file.

Display Christmas Tree in Linux Terminal (Bash script)

Christmas Tree in Terminal

If you want to display an animated Christmas tree in the terminal, you can use the command below:

curl https://raw.githubusercontent.com/sergiolepore/ChristBASHTree/master/tree-EN.sh | bash

If you don’t want to get it from the internet all the time, you can get the shell script from its GitHub repository, change the permission and run it like a normal shell script.

Download Christmas Bash Tree Script

Display Christmas Tree in terminal using Python script

Christmas Tree in Python

Another similar CLI tool but written in Python this time.

Download or clone the project's GitHub repository. You'll have a terminal_tree.py file here.

Open a terminal, switch to the directory where you have cloned/downloaded the repository.

Run the Python script:

python terminal_tree.py

You'll have the Christmas Tree animation running in the terminal. Press Ctrl+C to stop it.

Display Christmas Tree in Linux terminal using Perl script

Christmas Tree in Linux terminal by NixCraft

This trick was originally shared by NixCraft. You’ll need to install a Perl module for this.

To be honest, I don’t like using Perl modules because uninstalling them is a real pain. So use this Perl module knowing that you’ll have to manually remove it.

perl -MCPAN -e 'install Acme::POE::Tree'

You can read the original article here to know more about it.

Treefetch: Like Neoftech but with Christmas Tree

You are probably familiar with the Neofetch command line tool. It shows the ASCII logo of your distro along with some details about the currently installed system.

Treefetch is similar. Only, you display a Christmas tree instead of distro logo. And the colors are also more into Christmas spirit.

Treefetch for Christmas Decoration

Some distributions have the treefetch package available from their repository. You can get more information on project's GitHub repository page.

Download Linux Christmas Wallpapers

All these Linux Christmas wallpapers are created by Mark Riedesel and you can find plenty of other artwork on his website.

He has been making such wallpapers almost every year since 2002. Quite understandably, some of the earliest wallpapers don’t have modern aspect ratio. I have put them up in reverse chronological order.

One tiny note. The images displayed here are highly compressed, so download the wallpapers from the provided link only.

Christmastux2019

Download This Wallpaper

Christmas Tux Wallpaper

Download This Wallpaper

Christmas Linux Wallpaper

Download This Wallpaper

Christmas Linux Wallpapers

Download This Wallpaper

Christmas Linux Wallpapers

Download This Wallpaper

Christmas Linux Wallpapers

Download This Wallpaper

Christmas Linux Wallpapers

Download This Wallpaper

Christmas Linux Wallpapers

Download This Wallpaper

Christmas Linux Wallpapers

Download This Wallpaper

Christmas Linux Wallpapers

Download This Wallpaper

Christmas Linux Wallpapers

Download This Wallpaper

Christmas Linux Wallpapers

Download This Wallpaper

Christmas Linux Wallpapers

Download This Wallpaper

Christmas Linux Wallpapers

Download This Wallpaper

Christmas Linux Wallpapers

Download This Wallpaper

Christmas Linux Wallpapers

Download This Wallpaper

Christmas Linux Wallpapers

Download This Wallpaper

Bonus: Linux Christmas carols

Here is a bonus for you. Christmas carols Linuxified for Linux lovers like us.

In an article on Computer WorldSandra Henry-Stocker shared such Christmas carols. An excerpt:

To the tune of: Chestnuts Roasting on an Open Fire

Running merrily on open source
With users happy as can be
We’re using Linux and getting lots done
And happy everything is free

To the tune of: The Twelve Days of Christmas

On my first day with Linux, my admin gave to me a password and a login ID
On my second day with Linux my admin gave to me two new commands and a password and a login ID

You can read full carols here. If you want Tux avatar in the reindeer format, check out this repository.

Merry Linux to you!!

About the author
Abhishek Prakash

Abhishek Prakash

Created It's FOSS 11 years ago to share my Linux adventures. Have a Master's degree in Engineering and years of IT industry experience. Huge fan of Agatha Christie detective mysteries πŸ•΅οΈβ€β™‚οΈ

20 comments
Avatar Placeholder
Michael Car****
I agree with both Piers and ◼️Peg: I am a diehard KDE fan and I think this site is awesome! PS: I am so glad to hear that you are getting some of the articles translated into Spanish and the Academy as well! Oops! I almost forgot, congratulations on finishing the whole year with 52 (1 per week, every week!) newsletter emails! I have said it before and I will say it again: you make the world a better place and whether you can see all hits/visits/views or not, you are providing real, informative and useful as well as fun information for thousands more than you can tell from a hits-counter because of the cut-and-pastes of parts of your information that get forwarded to who knows how many people! Anyway, thank you very much and may God Bless you abundantly with all your needs, but not necessarily all your wants! Happy New Year! MichaelTheGamer
Hide Replies 1
Avatar
Abhishek Prakash
Thanks for all the kind words and wishes, Michael. Not sure of the world, but I sure am happy to help people become better Linux users. Wish you a happy new year :)
Avatar Placeholder
SquarePeg
I really wish someone would make the snowing desktop feature for KDE Plasma
Avatar
Member
JP CILLIERS
I'm not really that big on snow and the wallpaper thing, also as no one besides myself gets to see my monitors, it would be a bit of a waste of time and effort. That said, have an awesome Christmas and a prosperous New Year ahead Abhishek. One of the best Foss sites on the web, keep up the good work.
Hide Replies 1
Avatar
Abhishek Prakash
That's true. This is more appropriate for shared computers in educational institutes or even common family desktop. Thanks for the wishes, John. Merry Christmas and a happy new year.
Avatar Placeholder
Ralph.
Sure wish I could find some Cinnamon Christmas themes!
Hide Replies 1
Avatar Placeholder
KITT
Yeah, i use linux mint and i want some christmas themes!
Avatar Placeholder
Eric Bradshaw
Cycle through these Wallpapers: try SyncWall https://sourceforge.net/projects/syncwall/, Variety https://peterlevi.com/variety/ or Qt4 wallpaper changer Wally https://sourceforge.net/projects/wally/
Avatar Placeholder
Member
Paul Mahieu
I saved my selection as Tuxmas (thought that was quite fitting) Thank you sir. May brotherhood extend throughout the year
Avatar Placeholder
Member
Its FOSS Member
A merry Christmas and a happy new year to all humanity. Let the Christmas spirit percolate to all.
Avatar Placeholder
jim
Hello Friends... this is one of my favorites: https://www.deviantart.com/karl-schneider/art/Oh-Linux-Tree-725262356
Avatar Placeholder
LinuxMint
Anything for Linux Mint Mate users?
Avatar Placeholder
Paul
Hey just notice! First two wallpaper links navigate to same wallpaper. Cannot download the first one :( But yeah they are great thanks for sharing! Wouldbe nice if you could fix it~
Hide Replies 1
Avatar
Abhishek Prakash
Thanks for mentioning that. I have fixed it now.
Avatar
Neb
Much fun. Thanks!
Hide Replies 1
Avatar
Abhishek Prakash
You're welcome :)
Avatar Placeholder
Piotor Helmn
Those are great wallpapers--thank you! FWIW, I found some other cute ones on the Destination Linux podcast page. My daugher likes them so much she has promised to make some too! You can find them here: https://destinationlinux.org/wp-content/uploads/2018/11/ben-tux-1080h.jpg https://destinationlinux.org/wp-content/uploads/2018/11/eileen-tux-1080h.jpg Happy holidays! Piotor
Hide Replies 2
Avatar
Abhishek Prakash
Thanks for sharing them :)
Avatar Placeholder
Joe White
Thank you for the smiles. Wonderful pictures.
Avatar Placeholder
Daljeet
Awesome wallpaper
FastComments.com

Become a Better Linux User

With the FOSS Weekly Newsletter, you learn useful Linux tips, discover applications, explore new distros and stay updated with the latest from Linux world

itsfoss happy penguin

Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to It's FOSS.

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.