Welcome to the products page for Frigcal, a calendar that's personal, private, and portable. Frigcal is a GUI program coded in Python/Tk, which stores your calendar entries in portable ICS files that work across platforms and programs. With Frigcal, your calendar data is your business, not something to be scanned and monetized by nosy companies. For a quick tour of Frigcal's features, see its User Guide's
, its PC
, and its Android
.
New: As of Jan-2026, the Tk-based Frigcal 3.0 hosted on this page has been superseded on all platforms by the new Frigcal 4.0 standalone app hosted
. The new app still uses ICS files and reuses some legacy Frigcal 3.0 code but better supports
and its permissions by recoding the GUI in Kivy, adding storage interfaces, and providing a standalone app. As before, the new app also runs on all
platforms. More details
.
New: As of Oct-2024, the new Frigcal
adds emojis support and search in the GUI, eliminates Android code patches, auto-deblurs the GUI on Windows, and more. For info on 3.0, see its
and latest
.
Both the current 3.0 and legacy 2.0 versions of Frigcal are available in the following sections. Users are encouraged to install the current 3.0, given its many
. Click the download links below to fetch the packages you wish to use.
Version 3.0 (latest)
Frigcal 3.0 runs on macOS, Windows, Linux, and Android. It's available as a portable and complete source-code package that runs unpatched on all four platforms, plus a platform-specific macOS app and Windows executable. The macOS app works natively on both Apple M and Intel devices running Catalina+, and the Windows executable works on 64-bit Windows 11 and 10 devices.
macOS app ☞
Windows exe ☞
Source-code package ☞
Version 2.0 (legacy)
Frigcal 2.0 runs on macOS, Windows, Linux, and Android. It's available as a platform-specific macOS app (Intel native), Windows exe (both 64- and 32-bit), and Linux executable, plus a portable and complete source-code package that runs on all four platforms but requires minor patches on Android per
.
macOS app ☞
Windows exe, 64 bit ☞
Windows exe, 32 bit ☞
Linux executable ☞
Source-code package ☞
For more details on Frigcal's download packages, as well as their complete install and usage instructions, see the main
. In brief, you'll fetch, unzip, and run either the unzipped app itself (macOS), a same-named executable inside the unzip (Windows and Linux), or the program's main script in the unzipped source code (all platforms).
The latest getting-started pointers:
Source-code users (all platforms) Frigcal 3.0 works best on
3.11 and later and their Tks 8.6.12 and later. No third-party extensions must be installed. Recent updates:
(2026) New Frigcal 4.0 source-code package As noted at the
of this page, in Jan-2026 Frigcal 3.0 was subsumed by the
app, which provides a full runnable source-code
that may be used on hosts that cannot run an app or executable. The 4.0 source code requires installs of additional packages; see its docs. macOS app users See the tips and fixes for your platform's
warnings, and
permissions. Both of these apply only to the macOS app, not source code. The
covers Launchpad on your platform. Mojave users: see also
to fix crashes and blank windows caused by macOS dark mode.
Apple M-chip users: the Rosetta 2 emulator is required to run the app package (until 3.0) but not source code.
Recent updates:
(2026) New Frigcal 4.0 macOS app As noted at the
of this page, in Jan-2026 Frigcal 3.0 was subsumed by the
app, which provides a new macOS
that makes macOS issues noted on this page moot. (2025) New first-run requirements Recent versions of macOS have grown more heavy-handed in their treatment of apps installed from sources other than the Apple app store. This includes Frigcal, whose first run will generate an ominous and wholly invalid
with neither pointers to remedies nor options in Settings. To get Frigcal to open on these macOS versions, you must first run either of the following command lines in the Terminal app (replace Applications with your unzip/install folder if it differs): xattr -c /Applications/Frigcal.app xattr -r -d comp.apple.quarantine /Applications/Frigcal.app The first of these clears all extended attributes on the app and the second removes just its quarantine attribute. Once you've run either of these one-time setup steps, the app will open without warnings thereafter. For screen captures of the process, see this
. Though untested, you may also be able to fully disable the Gatekeeper layer behind the new constraints; more info
and
.
Also note that by 2025's macOS Sequoia, it's more likely that you'll need to change icspath in Frigcal's config
to locate calendar files outside the program's run-folder default. For more info, see the related PyEdit
.
(2025) Highlight-color workaround A macOS Catalina test machine began using white as the highlight color for all selected text in dark mode, which is unusable with light backgrounds. This impacts all Tk-based GUIs on this machine, and is likely a macOS or Tk bug. Fortunately, its one-time workaround is easy: open System Preferences => General, and change the "Highlight color" there to Blue (or other). Alternatively, pick a dark color scheme via frigal_configs.py settings, or use light mode on your macOS PC. (2024) Multiple improvements in 3.0 Frigcal 3.0 makes most of the next update's concerns moot. The macOS app runs natively on both Intel and Apple M-chip devices, the former launcher is replaced by a frigcal-main.py run by the app, and dark-mode colors and recent Tk cosmetic changes have been accommodated. (2023) New constraints for 2.0 [defunct] Per vetting on macOS Ventura, launching the 2017 app package directly no longer works, because its splashscreen cannot open the main program; launch instead by opening the app package's main program at Contents/MacOS/frigcal within the unzipped Frigcal.app. The source-code package still works in full, but a newer Tk used by newer Pythons may cause text-color issues in dark mode (e.g., white on light); work around this by config-file color changes, or disabling dark mode—either globally, or for Python with commands
. Windows executable users See the tips and fixes for your platform's
warnings, executable
speed, and
on Windows 10+. The first two of these apply only to Windows executables, not source code. Recent updates:
(2026) New Frigcal 4.0 Windows executable As noted at the
of this page, in Jan-2026 Frigcal 3.0 was subsumed by the
app, which provides a new Windows
. (2024) Blurriness fixed in 3.0 Frigcal 3.0 automatically fixes blurriness on Windows, for both executable and source-code usage. (2023) Windows 11 verified This program's executable and source-code have now been vetted to work well on Windows 11, in addition to 7, 8, and 10. Linux executable users (2.0) You can add Frigcal to your applications launcher by fetching
and installing it per steps 1..4 in
. See also
for a possibly useful library fix for the executable. Recent updates:
(2026) New Frigcal 4.0 Linux executable and source As noted at the
of this page, in Jan-2026 Frigcal 3.0 was subsumed by the
app, which provides a new Linux
, as well as runnable source
for hosts that cannot run the executable. (2024) Linux executable dropped in 3.0 Frigcal 3.0 dropped the Linux executable altogether due to the potential for library skew; please run source code on this platform. (2020) Executable broken, use source Per
, Frigcal's Linux executable was broken by recent Linux changes; please use the source-code package instead.
See
for details on running Frigcal on your platform. In short, you'll fetch and patch its source-code package, and launch it in an app's IDE (but see the 4.0 update ahead: source code is no longer required). Android 11+ users: see also
for recent changes on Android; most don't impact Frigcal directly (until the next note).
Recent updates:
(2026) New Frigcal 4.0 Android app
As noted at the
of this page, in Jan-2026 Frigcal 3.0 was subsumed by the
standalone Android
, which similarly works on both
and
, but provides a much more seamless user experience on Android by removing the dependency on Pydroid 3 and avoiding Android storage limitations for calendar files. Please note that 4.0's GUI differs substantially from 3.0's and uses an event-color model that is not backward compatible with 3.0's configurations file, but a color auto-converter
is available for 3.0 users. (2024) Multiple enhancements in 3.0 Android no longer requires code patches, because Frigcal 3.0's source-code package incorporates all former Android patches: simply install and run its frigcal-main.py in the Pydroid 3 app. You may also configure as usual in frigcal_configs.py, and a commented-out code line in frigcal-main.py may be enabled to support file-explorer opens and shortcuts. For more details, see section "4. PLATFORMS" in
. (2024) Host app improves storage support Pydroid 3's version 7 finally obtained Android's All Files Access permission, which restores access to shared storage in code the app runs and negates the following note. See the
. (2023) Host app limits storage support [defunct] Pydroid 3's version 6 imposed extra steps for running this program on Android; see the coverage
and
. In short, you must unzip and run in a specific accessible folder, and sync or copy your calendar files to the same. For a preview of Frigcal in action, see its screenshots—
and
.
For information on using Frigcal, explore its
.
For highlights of Frigcal's releases, view its
.
For Frigcal's full source code online, browse its
.
For more tips and updates, see the support
and older
.