61

Looking for a Alarm Clock for Ubuntu with following:

  1. Repeat an alarm after user defined period of time
  2. Can be paused
  3. Can be reset
  4. Shows a visual indication at alarm time
  5. Visual indication should remain till it is dismissed by user
Jacob Vlijm
  • 83,767

6 Answers6

42

These 3 should all do what you require:

https://alarm-clock-applet.github.io/
(source code: https://github.com/alarm-clock-applet/alarm-clock)

Alarm Clock is a fully-featured alarm clock which resides in the notification area. It is easy to use yet powerful with support for multiple and repeatable alarms, as well as snoozing and a flexible notification system.

Two types of alarms are supported: Alarm Clocks and Timers. Notification is done by either playing a sound or launching an application.

This software is not available in the official repositories. The developers recommend using their official PPA.

sudo add-apt-repository ppa:tatokis/alarm-clock-applet
sudo apt update
sudo apt install alarm-clock-applet

Note: The following part of the answer was written for older versions of Ubuntu, and does not work anymore for Ubuntu 20.04+. If you are using a recent version of Ubuntu, use the PPA mentioned above.


Install via the software center

enter image description here

https://apps.ubuntu.com/cat/applications/wakeup/

This package has a complete graphical front end with which a user can set an alarm to wake the computer - from poweroff if possible - and read a user-defined text. This text can grab relevant information (date, time, weather, Evolution schedule and tasks, news from an rss feed, number of new email messages, etc.) and speak that as well, or play music, all as defined by the user. More capabilities can be added to the alarm via a complete and simple plugin system. Supports multiple alarms.

Install via the software center

enter image description here

https://apps.ubuntu.com/cat/applications/alarm-clock/

Alarm Clock is the personal alarm clock for GTK+ desktop environments. It supports sound fading, scheduled alarms, snooze option, passive window reminders, exception lists for scheduled alarms, exporting alarms and much more!

Install via the software center

enter image description here

Rinzwind
  • 299,756
  • 2
    All links are broken, but for alarm-clock-applet you may find a package here: https://packages.ubuntu.com/search?keywords=alarm-clock-applet – Jocelyn Jan 20 '20 at 19:16
  • 2
    alarm-clock-applet doesn't seem to exist in 19.10 – Mark E. Haase Mar 09 '20 at 12:42
  • I downloaded this app, by me, is the Start Application button on by default and it is imposible to turn off. The default command is rhythmbox-client --play. I just left it like that. Then what I later found out is that this 'Rhythmbox` is on by default when I boot the computer and starts to play some media files that happen to be in its playlist. – dafnahaktana Dec 29 '20 at 10:50
  • Links : https://packages.ubuntu.com/bionic/alarm-clock-applet , http://alarm-clock.pseudoberries.com , https://launchpad.net/alarm-clock , https://github.com/joh/alarm-clock , https://launchpad.net/~joh/+archive/ubuntu/ppa – Banee Ishaque K Jul 22 '22 at 02:10
  • Installed with PPA on Mint Linux 21.1 and love it. Thanks very much @Rinzwind – digitalextremist Apr 27 '23 at 20:57
17

By Terminal, you can use this command:

sudo apt-get install alarm-clock-applet

Source: http://www.ubuntubuzz.com/2015/05/how-to-install-alarm-clock-in-ubuntu-1504.html

6

You might want to have a look at Teatime:

Seth
  • 58,122
orschiro
  • 13,317
  • 17
  • 87
  • 161
3

For Ubuntu Budgie

Budgie CountDown

enter image description here

The icon changes color on time progress, from green to yellow - red.

enter image description here

Installation

  • For 16.04 - 17.10:

    Activate backports:

    sudo add-apt-repository ppa:ubuntubudgie/backports
    

    and run:

    sudo apt install budgie-countdown-applet
    
  • For 18.04 and higher, it will be in the repos.

Jacob Vlijm
  • 83,767
2

Some options I like are below. All 3 have been fully tested in Ubuntu 22.04.

1. Alarm Clock Applet

References:

  1. main answer by @Rinzwind
  2. Official website: https://alarm-clock-applet.github.io/
  3. Official source code repository: https://github.com/alarm-clock-applet/alarm-clock

Install it:

sudo add-apt-repository ppa:tatokis/alarm-clock-applet
sudo apt update
sudo apt install alarm-clock-applet

Use it:

Press Windows --> type "alarm" --> click the "Alarm Clock" icon. Then, click the "+" button in the top-left of the app, and create an alarm, as shown below!

Use the "Alarm Clock" mode to set an alarm to go off at a certain time of day (using a 24-hour clock), and use the "Timer" mode to have a countdown timer that goes off once the specified time has elapsed (up to 23h:59m:59sec):

enter image description here

The sound appears to play indefinitely until you stop the alarm or timer, which is great. (Note: my command-line alarm_timer script below does that too.)

2. Gnome Clocks

Gnome Clocks has a good (and annoying) alarm. It sounds just like a loud watch alarm, or old alarm clock high-pitched "beep beep". You can set the alarm duration (default is 5 minutes), and snoose it.

Install it:

sudo apt update
sudo apt install gnome-clocks 

Then open it by pressing the Windows key and typing "Clocks". Click the icon to open it.

Here are some example alarms. Click the + in the top-left to add a new alarm:

enter image description here

Here are some alarm settings: enter image description here

3. Bash one-line alarm script

Here's a simple one-liner alarm script that reminds you to feed the cat in 10 minutes from now. It waits 10 minutes, then beeps 10 times in a row, then opens a popup window with a reminder title and text. The reminder window automatically gains focus, and only closes once you press the "OK" button.

Note: For all code below, change sleep 600 to sleep 1 to wait only one second for a quick test of how this alarm works.

sleep 600; for i in {1..10}; do echo -en "\a"; sleep 0.1; done; zenity --info --title "Reminder" --text "Feed the cat!"

Here's what it looks like in a more readable, multi-line form:

alarm.sh:

#!/usr/bin/env bash

sleep 600 # sleep 600 seconds (10 minutes)

Beep 10 times when done

for i in {1..10}; do echo -en "\a" sleep 0.1 done

Open a popup window with the reminder title and text

zenity --info --title "Reminder" --text "Feed the cat!"

Here is what the reminder window looks like. Again, it stays open until you close it.

enter image description here

[My preference] Even more annoying: beep forever until you click "OK"

This one brings up the popup window and beeps continuously until you click "OK" in the popup window. This is useful if you need to keep the beep going until you acknowledge the reminder.

(sleep 600; while true; do echo -en "\a"; sleep 0.15; done) & beep_pid="$!"; zenity --info --title "Reminder" --text "Feed the cat!"; kill "$beep_pid"

Here's what it looks like in a more readable, multi-line form:

alarm.sh:

#!/usr/bin/env bash

Sleep 600 seconds (10 minutes), then beep forever until you click "OK" in

the popup window

sleep 600 # sleep 600 seconds (10 minutes)

Run the beep command in the background, and save its PID in a variable

while true; do echo -en "\a" sleep 0.15 done & beep_pid="$!"

Open a popup window with the reminder title and text

zenity --info --title "Reminder" --text "Feed the cat!"

Kill the beep command once the user has closed the popup window above

kill "$beep_pid"

[Best] And, I have wrapped it into a more-sophisticated and sourceable (importable) alarm_timer function as well

Get alarm_lib.sh from my eRCaGuy_hello_world repo.

Then use it like this:

# source the alarm_lib.sh file to get access to the alarm_timer function
# (Add this one line to your ~/.bashrc file to get access to this function
# in _all_ terminals!)
. "path/to/alarm_lib.sh"

Use it: alarm_timer <seconds> <text>

This will bring up the reminder message and begin beeping continually until

interrupted once 10 minutes (600 seconds) have elapsed.

alarm_timer 600 "Feed the cat!"

This usage is also allowed (no quotes around the message):

alarm_timer 600 Feed the cat!

[BEST] You can also use integer math to calculate the number of seconds

for you: 10 minutes * 60 seconds/minute = 600 seconds

alarm_timer $((10*60)) "Feed the cat!"

References

  1. My answer: terminator terminal won't play bell sound - reminded me that echo -e "\a" plays the bell sound.
  2. My answer: Super User: Is there a way to show notification from bash script in Ubuntu? - reminded me how to use Zenity popup windows.
  3. My answer: Stack Overflow: How to wait in bash for several subprocesses to finish, and return exit code !=0 when any subprocess ends with code !=0? - reminded me how to obtain the PID (Process ID) of a running process with "$!" so I can manually kill it.
  4. Lots of chats with the GitHub CoPilot AI inside of the VSCode IDE. These chats helped me work out the logic, syntax, and code. All work here is my own. This answer is my own words and content.
1

To install alarm-clock-applet in Ubuntu 22.04: https://packages.ubuntu.com/bionic/amd64/alarm-clock-applet/download. I downloaded the amd64 architecture for my system: alarm-clock-applet_0.3.4-1build1_amd64.deb.

$ sudo apt-get install ./alarm-clock-applet_0.3.4-1build1_amd64.deb
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 alarm-clock-applet : Depends: gconf-service
                      Depends: libappindicator1 (>= 0.4.90)
                      Depends: libgconf-2-4 (>= 3.2.5) but it is not installed
                      Depends: libunique-1.0-0 (>= 1.0.0) but it is not installed
                      Depends: gconf2 (>= 2.28.1-2)
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
$ sudo apt-get --fix-broken install

"Alarm Clock" application should now be available to run.

rcpa0
  • 594