Introduction
Alarm Clock is a fully-featured alarm clock for use with an AppIndicator implementation. It's easy to use yet powerful with support for multiple repeatable alarms, as well as snoozing and a flexible notification system.
- @tatokis is now the new maintainer Posted Jan 19, 2023
Hello alarm-clock contributors and users,
After a long period of being unmaintained, I am thrilled to announce that alarm-clock has a new maintainer: @tatokis!
You may have noticed a recent burst of activity in the project, with lots of improvements, bug fixes, and even a new 0.4.1 release! All of these developments are thanks to @tatokis.
New maintainer
As the original creator of alarm-clock, it makes me very happy to hand over the maintainership to @tatokis. He has already made significant contributions to the code base, including porting the project to Gtk 3, GSettings, GtkApplication, GActions and a more modern CMake build system. All of these improvements should also enable alarm-clock-applet to be packaged in modern Linux distributions. I am confident that the project will thrive under his leadership.
Note: The maintainership was handed over in Nov 2022, but I felt it was appropriate with an official announcement. My apologies for the delay in making this announcement.
- Alarm Clock 0.4.1 "Happy New Year" released! Posted Jan 9, 2023
GitHub Release
This release fixes numerous issues and removes all legacy dependencies. The minimum supported Ubuntu version is now 18.04.
Major Changes:
- The application has been ported to GTK 3, and will thus look slightly different.
- Old GTK Tray Icon support has been removed. A desktop environment with support for AppIndicators/StatusNotifierItem is required.
- Alarms have been migrated to GSettings.
Notable Fixes:
- Many memory leaks (including a massive one while the UI was visible)
- Alarm labels bouncing horizontally every second
- Debug messages breaking alarms and timers
- Compile errors
New Features:
- Default media players are now autodetected.
- More media players can be controlled using playerctl out of the box.
- More system sounds are now added to the list by default.
Full Changelog:
Notes for package maintainers:
Many dependencies have changed and the project is now built with CMake. If available, please build with GConf2 support enabled so that people can migrate any old alarms they might have, even if they built from source previously. If possible, also add
playerctl
as an optional/recommended dependency; its presence is detected at runtime.What happened to 0.4.0?
It was meant to be tagged right before the major rewrite/porting work started, however it was tagged at the wrong commit by accident, and is thus now ignored.
- LOOKING FOR MAINTAINERS Posted Feb 8, 2021
Unfortunately, this project is no longer maintained. If you're interested in maintaining Alarm Clock, please get in touch: joh@pseudoberries.com
- Alarm Clock migrated to GitHub! Posted Mar 24, 2017
Alarm Clock has officially moved to GitHub: https://github.com/joh/alarm-clock
All bugs have been migrated as well: https://github.com/joh/alarm-clock/issuesBlueprints have not yet been moved. Selected ones may be moved to the wiki in the future.
The Launchpad project is still used for translations.
Launchpad has been configured to automatically import changes from GitHub.- Alarm Clock 0.3.4 "Hipp, hipp" released! Posted May 17, 2015
This is a bug fix release:
Bugs fixed:
1122500 - Don't cancel the next alarm if alarm triggers a day late
1137453 - Port to GStreamer 1.0Please see the ChangeLog for more details.
- Alarm Clock 0.3.3 "Squish" released! Posted Jun 3, 2012
This release includes minor improvements and various bug fixes:
* Set app indicator title
Bugs fixed:
290733 - Automatically detect daylight savings time
800635 - Let the WM decide the initial position of the list window
823585 - Check that media player was created successfully
908636 - Don't show notifications when alarms are stopped/snoozed
885059 - Update timestamp when type is changed for active alarms
977110 - Use segment seeks to prevent playback delays when looping
824337 - Enable alarm when closing the Edit alarm dialogPlease see the ChangeLog for more details.
Features
Easy to use
Alarm Clock is easy to use - clicking the panel icon will bring up a list of alarms. From there you can add, edit and delete alarms as well as start, stop and snooze them.
Alarm Clock supports two types of alarms: Clocks and Timers. The Clock will go off at a specific time of day while the Timer will ring after the specified amount of time.
Notifications
Alarm Clock will notify you of an alarm by either playing a sound or starting your favorite music player! You can of course specify which sound you would like to use and whether it should be repeated or not. It’s also possible to specify a custom command to run instead of the pre-defined media players.
A notification bubble will appear when an alarm goes off, just in case you missed the sound.
Snooze
Both alarms and timers can be snoozed - it's as easy as selecting the alarm and clicking "Snooze".
For convenience, the right-click menu of the panel icon provides quick access to snoozing and stopping any beeping alarms.
Powerful
Alarm Clock is powerful and supports multiple alarms as well as auto-repeatable alarms.
Installation
Debian, Linux Mint, Ubuntu & derivatives
If you are running Ubuntu 23.04 "Lunar Lobster", Debian 12 "Bookworm", or newer, you can install Alarm Clock by simply clicking the big green button below.
If you are running an older version of Ubuntu, Linux Mint, or you simply want the latest version of Alarm Clock, first add the PPA by running the following two commands in a terminal:
sudo add-apt-repository -y ppa:tatokis/alarm-clock-applet
sudo apt update
and entering your password when requested.
Then, you can click the big button below to install!
Yes, I want it!
This will install the alarm-clock-applet package. If the button above does not work, you can also install it using the terminal by running
sudo apt install alarm-clock-applet
or by searching for alarm-clock-applet in your preferred Software Centre.
If you are running a version of Debian older than 12 "Bookworm", you will need to manually build from source.
Arch Linux, Manjaro, EndeavourOS & derivatives
Alarm Clock can be installed from the AUR.
Please make sure you have first read through the Arch Wiki AUR page, especially the note in the Installing and upgrading packages section.
Any issues opened about errors while loading shared libraries on Arch-based systems will be closed.
Downloads
The latest stable release is Alarm Clock 0.4.1.
- alarm-clock-0.4.1.tar.gz
- alarm-clock-applet-0.3.4.tar.gz
- alarm-clock-applet-0.3.3.tar.gz
- alarm-clock-applet-0.3.2.tar.gz
- alarm-clock-applet-0.3.1.tar.gz
- alarm-clock-applet-0.3.0.tar.gz
- alarm-clock-applet-0.2.6.tar.gz
- alarm-clock-0.2.5.tar.gz
- alarm-clock-0.2.4.tar.gz
- alarm-clock-0.2.3.tar.gz
- alarm-clock-0.2.2.tar.gz
- alarm-clock-0.2.1.tar.gz
- alarm-clock-0.2.tar.gz
- alarm-applet-0.1.2.tar.gz
- alarm-applet-0.1.1.tar.gz
- alarm-applet-0.1.tar.gz
(In version 0.2, the project changed name from Alarm Applet to Alarm Clock)
Build from Source
Requirements
Please check the Requirements section of the README for information regarding dependencies. They're usually in the *-dev or *-devel packages in most distributions.
Debian/Ubuntu-specific dependency packages
All the dependencies on a Debian/Ubuntu system can be installed with:
sudo apt install build-essential cmake libgconf2-dev libxml2-dev libgtk-3-dev libgstreamer1.0-dev libnotify-dev libayatana-appindicator3-dev gettext gnome-icon-theme perl gzip
Building and Installing
Download and extract the source code with:
wget --content-disposition https://github.com/alarm-clock-applet/alarm-clock/archive/refs/tags/0.4.1.tar.gz
tar zxvf alarm-clock-0.4.1.tar.gz
cd alarm-clock-0.4.1
And compile - install with the usual:
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make
sudo make install
Bugs & Suggestions
Please post any bugs and suggestions to the GitHub issue tracker! If you'd like to see Alarm Clock speak your native tongue, consider helping out with the translations!