Personal noctalia plugins collection
1# Weekly Calendar Plugin 2 3A weekly calendar plugin that makes use of Noctalia's [CalendarService.qml](https://github.com/noctalia-dev/noctalia-shell/blob/main/Services/Location/CalendarService.qml) to display events. 4## Features 5 6- **Bar Widget**: Show a quick tooltip to see current and upcoming events on hover (updates occur on click); 7- **Panel**: Complete weekly calendar interface supporting both all-day and normal events with a native-like interface; 8- **Keyboard Navigation**: Use arrow keys to navigate through your events; 9- **Settings**: Choose time format, first day of the week, grid line colour and opacity. 10 11## Installation 12 13This plugin is part of the [noctalia-plugins](https://github.com/noctalia-dev/noctalia-plugins) repository, installation can either be done by: 141. adding it as a source in the plugins section; 152. cloning this into `~/.config/noctalia/plugins`. 16 17## Configuration 18 19- **First day of week**: Choose which day starts the week in the weekly calendar (Monday, Sunday or Saturday). 20- **Use 12-hour format**: Display time in 12-hour format (AM/PM) instead of 24-hour format. 21- **Grid Lines**: Depending on your theming, choose the color and opacity used for the grid lines for better visibility. 22 23## IPC Commands 24 25Currently there is `1` IPC command: 26 27```bash 28# Toggle the panel 29qs -c noctalia-shell ipc call plugin:weekly-calendar togglePanel 30``` 31 32## Usage 33 34As a result of relying on Noctalia's [CalendarService.qml](https://github.com/noctalia-dev/noctalia-shell/blob/main/Services/Location/CalendarService.qml), this plugin supports any calendar that works with `evolution-data-server`, covering all major calendar services (e.g. NextCloud, Google Calendar, and CalDAV / WebDAV servers). 35 36The most straightforward ways to start is by either downloading `evolution` or `gnome-calendar` and set calendars through them. 37 38## Minimum Requirements 39 40- **Noctalia Shell**: 4.2.3 or later. 41- `evolution-data-server` (also needed for Noctalia's month calendar to display events) 42- **Python packages**: EDataServer, ECal, and ICalGLib. (see [calendar-events.py](https://github.com/noctalia-dev/noctalia-shell/blob/main/Scripts/python/src/calendar/calendar-events.py)) 43