├── ggt
├── ggt_tools
├── .gcloudignore
├── requirements.txt
├── cron.yaml
├── app.yaml
├── assetlinks.json
└── index.html
├── settings.gradle
├── app
├── lint.xml
├── src
│ ├── test
│ │ ├── resources
│ │ │ ├── jres_2022.ics
│ │ │ ├── jres_2022.json
│ │ │ ├── kielux_2020.json
│ │ │ ├── fosdem_2021.json
│ │ │ └── linux_conf_au_2020.json
│ │ └── java
│ │ │ └── android
│ │ │ └── util
│ │ │ └── Log.java
│ └── main
│ │ ├── res
│ │ ├── drawable
│ │ │ ├── ic_warning.png
│ │ │ ├── schedule_line_background.xml
│ │ │ ├── burger_menu_active_background.xml
│ │ │ ├── schedule_item_remind_background.xml
│ │ │ ├── round_button.xml
│ │ │ ├── menu_gradient.xml
│ │ │ ├── ic_arrow_back_white_32dp.xml
│ │ │ ├── ic_arrow_forward_white_32dp.xml
│ │ │ ├── widget_head.xml
│ │ │ ├── widget_bottom.xml
│ │ │ ├── ic_clear_black_24dp.xml
│ │ │ ├── ic_calendar_24px.xml
│ │ │ ├── ic_search_black_24dp.xml
│ │ │ ├── ic_history_black_24dp.xml
│ │ │ └── ic_search_white_24dp.xml
│ │ ├── drawable-hdpi
│ │ │ ├── ic_warning.png
│ │ │ ├── deoxide_icon.png
│ │ │ ├── ic_add_white_24dp.png
│ │ │ ├── ic_menu_white_24dp.png
│ │ │ ├── ic_place_black_24dp.png
│ │ │ └── ic_settings_white_24dp.png
│ │ ├── drawable-xhdpi
│ │ │ ├── deoxide_icon.png
│ │ │ ├── ic_warning.png
│ │ │ ├── ic_add_white_24dp.png
│ │ │ ├── ic_menu_white_24dp.png
│ │ │ ├── ic_place_black_24dp.png
│ │ │ ├── ic_schedule_white_48dp.png
│ │ │ └── ic_settings_white_24dp.png
│ │ ├── drawable-mdpi
│ │ │ ├── ic_add_white_24dp.png
│ │ │ ├── ic_menu_white_24dp.png
│ │ │ ├── ic_place_black_24dp.png
│ │ │ └── ic_settings_white_24dp.png
│ │ ├── drawable-xxhdpi
│ │ │ ├── ic_add_white_24dp.png
│ │ │ ├── ic_menu_white_24dp.png
│ │ │ ├── ic_place_black_24dp.png
│ │ │ └── ic_settings_white_24dp.png
│ │ ├── drawable-xxxhdpi
│ │ │ ├── ic_add_white_24dp.png
│ │ │ ├── ic_menu_white_24dp.png
│ │ │ ├── ic_place_black_24dp.png
│ │ │ └── ic_settings_white_24dp.png
│ │ ├── xml
│ │ │ ├── paths.xml
│ │ │ ├── widget_info.xml
│ │ │ └── preferences.xml
│ │ ├── values-nl
│ │ │ └── arrays.xml
│ │ ├── values-cs
│ │ │ └── arrays.xml
│ │ ├── values-it
│ │ │ └── arrays.xml
│ │ ├── values-de
│ │ │ └── arrays.xml
│ │ ├── values-fr
│ │ │ └── arrays.xml
│ │ ├── layout
│ │ │ ├── burger_menu_item.xml
│ │ │ ├── round_button.xml
│ │ │ └── widget_layout.xml
│ │ ├── menu
│ │ │ └── scheduleviewactivity.xml
│ │ ├── drawable-night-v29
│ │ │ ├── ic_history_black_24dp.xml
│ │ │ └── ic_search_black_24dp.xml
│ │ ├── values-night-v29
│ │ │ └── styles.xml
│ │ ├── values-v27
│ │ │ └── styles.xml
│ │ ├── values-v29
│ │ │ └── styles.xml
│ │ └── values
│ │ │ ├── arrays.xml
│ │ │ └── styles.xml
│ │ └── java
│ │ └── net
│ │ └── gaast
│ │ └── giggity
│ │ ├── MyItemsView.java
│ │ └── ScheduleViewer.java
└── proguard-nomini.txt
├── play
├── feature.png
├── giggity-search.png
├── giggity-tablet.png
├── giggity-tracks.png
├── giggity-widget.png
├── giggity-chooser.png
├── giggity-nownext.png
├── giggity-eventdialog.png
├── giggity-timetable.png
├── giggity-blockschedule.png
└── feature-blockschedule.diff
├── gimp
├── notification.png
└── notification.xcf
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradle.properties
├── menu
├── osc_2024.json
├── entreelibre2.json
├── emf_2024.json
├── datenspuren_2023.json
├── fri3d_2024.json
├── newline2023.json
├── easterhegg22.json
├── datenspuren_2024.json
├── privacyweek_2019.json
├── debconf22.json
├── indiafoss_2024.json
├── kiwipycon_2023.json
├── pycon_es_2022.json
├── fossgis_2024.json
├── fossgis_2025.json
├── ubuntu_summit_2024.json
├── flosscon_2022.json
├── foss4g_europe_2024.json
├── kicon_asia_2024.json
├── lit_2023.json
├── lit_2024.json
├── newline2022.json
├── datenspuren_2021.json
├── kicon_europe_2024.json
├── privacyweek_2018.json
├── lit_2019.json
├── hope_2020.json
├── opensouthcode_2019.json
├── osc_2025.json
├── hope_2022.json
├── sstic_2025.json
├── datenspuren_2019.json
├── jdll_2019.json
├── linux_plumbers_conference_2024.json
├── umdh_2023.json
├── cfgmgmtcamp_2019_ghent.json
├── debconf21.json
├── emf2022.json
├── hackover_2023.json
├── jres_2019.json
├── sfscon_2024.json
├── vvoid-camp-2022.json
├── fossasia_2022.json
├── fossasia_2023.json
├── ietf104.json
├── minidebconfindia2021.json
├── packaging_con_2023.json
├── piandmore_125.json
├── matomocamp_2021.json
├── pycon_fr_2019.json
├── seagl_2023.json
├── sotm_eu_2024.json
├── tuebix_2019.json
├── pycon_fr_2024.json
├── spathum24.json
├── opensouthcode_2023.json
├── opensouthcode_2024.json
├── piandmore_13.json
├── parisweb_2022.json
├── jdll_2022.json
├── jdll_2023.json
├── jdll_2024.json
├── gpn21.json
├── gpn22.json
├── moca2024_it.json
├── 35c3_main_rooms_only.json
├── bibliocon24.json
├── installfest_2019.json
├── 35c3_new_and_merged.json
├── hackerhotel_2023.json
├── fossasia_2021.json
├── hackerhotel_2025.json
├── cfgmgmtcamp_2024_ghent.json
├── geopython_2022.json
├── hackerhotel_2024.json
├── bibliocon25.json
├── thsf_2023.json
├── cloudland_2023.json
├── ripe79.json
├── geodaysit_2023.json
├── pses_2024.json
├── easterhegg20.json
├── iger_2023.json
├── pgconfeu2022.json
├── rml_13.json
├── jres_2022.json
├── sotm_2021.json
├── alchimie_13.json
├── forum_php_2020.json
├── geopython_2024.json
├── kontaktdaskulturfestival2024.json
├── passthesalt_2022.json
├── sotm_eu_2023.json
├── foss4g_2024.json
├── grcon23.json
├── nixcon2022.json
├── oss_eu_2019.json
├── sotm_2024.json
├── cccamp19_main_rooms_only.json
├── foss4g_2023.json
├── hackmas24.json
├── pyladiescon_2023.json
├── everything_open_2025.json
├── sotm_2022.json
├── vcfb_2020.json
├── sfscon_2022.json
├── 38c3_merged.json
├── libreplanet_2020.json
├── libreplanet_2021.json
├── all_systems_go_2023.json
├── kielux_lpd_2020.json
├── ietf121.json
├── bitcoin_amsterdam_2022
├── mch2022.json
├── wikimania_2019.json
├── bitcoin_amsterdam_2023
├── sfscon_2021.json
├── bitcoin_amsterdam_2024
├── kielux_2020.json
├── parisweb_workshops_2023.json
├── kielux_lpd_2021.json
├── sfscon_2023.json
├── froscon_2022.json
├── libreplanet_2022.json
├── libreplanet_2023.json
├── parisweb_2021.json
├── 38c3_main_rooms_only.json
├── hacklu_2023.json
├── parisweb_2023.json
├── rc3_2021.json
├── bibtag22.json
├── bornhack_2022.json
├── bornhack_2023.json
├── bornhack_2024.json
├── kielux_lpd_2022.json
├── kielux_lpd_2023.json
├── matrixconf_2024.json
├── mrmcd_2024.json
├── kielux_lpd_2024.json
├── pgdayparis_2022.json
├── pgdayparis_2023.json
├── kielux_2021.json
├── libreoffice_libocon_2024.json
├── pycon_au_2024.json
├── wicmp_2025.json
├── bibliocon23.json
├── installfest_2020.json
├── capitole_du_libre_2019.json
├── forum_php_2022.json
├── fosdem_2021.json
├── fosdem_2022.json
├── capitole_du_libre_2018.json
├── fossy_2023.json
├── installfest_2022.json
├── sotm_fr_2024.json
├── hip_berlin_2022.json
├── bibtag20.json
├── linux_conf_au_2020.json
├── linuxday_at__2024.json
├── glam_wiki_2023.json
├── froscon_2024.json
├── linux_conf_au_2020_bad.json
├── froscon_2023.json
├── linuxday_at__2022.json
├── linuxday_at__2023.json
├── eurobsdcon_2023.json
├── oat24.json
├── wikimania_2024.json
├── fsck2024.json
├── passthesalt_2023.json
├── passthesalt_2024.json
├── sfscon_2020.json
├── rml_12.json
├── libreplanet_2019.json
├── capitole_du_libre_2023.json
├── capitole_du_libre_2022.json
├── froscon_2020.json
├── diwokiki_2019.json
├── pycon_uk_2023.json
├── linuxday_at_2019.json
├── oscal_2023.json
├── debconf24.json
├── oat23.json
├── capitole_du_libre_2024.json
├── kolt_2019.json
├── promconeu-2019.json
├── kielux_2022.json
├── kielux_2023.json
├── kielux_2024.json
├── linux_conf_au_2019.json
├── pycon_au_2023.json
├── pgconfnyc2023.json
├── glt22.json
├── bsides_london_2023.json
├── 36c3_main_rooms_only.json
├── glt23.json
├── oat22.json
├── ubucon_europe_2019.json
├── linuxdays_2019.json
├── glt25.json
├── foss4g_europe_2024_full.json
├── linuxdays_2023.json
├── linuxdays_2024.json
├── foss4g-sotm-oceania-2023.json
├── wikidatacon_2023.json
├── oat19.json
├── sotm_2019.json
└── 37c3_main_rooms_only.json
├── tools
├── ggt.sh
└── menu-indent.py
├── .gitignore
└── .github
└── workflows
└── android.yml
/ggt/ggt_tools:
--------------------------------------------------------------------------------
1 | ../tools
--------------------------------------------------------------------------------
/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/app/lint.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/ggt/.gcloudignore:
--------------------------------------------------------------------------------
1 | .gcloudignore
2 | .git
3 | .gitignore
4 | __pycache__/
5 |
--------------------------------------------------------------------------------
/play/feature.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/play/feature.png
--------------------------------------------------------------------------------
/gimp/notification.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/gimp/notification.png
--------------------------------------------------------------------------------
/gimp/notification.xcf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/gimp/notification.xcf
--------------------------------------------------------------------------------
/play/giggity-search.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/play/giggity-search.png
--------------------------------------------------------------------------------
/play/giggity-tablet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/play/giggity-tablet.png
--------------------------------------------------------------------------------
/play/giggity-tracks.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/play/giggity-tracks.png
--------------------------------------------------------------------------------
/play/giggity-widget.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/play/giggity-widget.png
--------------------------------------------------------------------------------
/play/giggity-chooser.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/play/giggity-chooser.png
--------------------------------------------------------------------------------
/play/giggity-nownext.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/play/giggity-nownext.png
--------------------------------------------------------------------------------
/play/giggity-eventdialog.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/play/giggity-eventdialog.png
--------------------------------------------------------------------------------
/play/giggity-timetable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/play/giggity-timetable.png
--------------------------------------------------------------------------------
/ggt/requirements.txt:
--------------------------------------------------------------------------------
1 | dulwich==0.21.6
2 | Flask==2.3.3
3 | google-cloud-storage==2.13.0
4 | jsonschema==4.10.3
5 |
--------------------------------------------------------------------------------
/play/giggity-blockschedule.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/play/giggity-blockschedule.png
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/app/src/test/resources/jres_2022.ics:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/test/resources/jres_2022.ics
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_warning.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable/ic_warning.png
--------------------------------------------------------------------------------
/ggt/cron.yaml:
--------------------------------------------------------------------------------
1 | cron:
2 | - description: "daily refresh"
3 | url: "/update-menu-cache?rev=HEAD"
4 | schedule: every 24 hours
5 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_warning.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-hdpi/ic_warning.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/deoxide_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-hdpi/deoxide_icon.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/deoxide_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xhdpi/deoxide_icon.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_warning.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xhdpi/ic_warning.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-hdpi/ic_add_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_menu_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-hdpi/ic_menu_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-mdpi/ic_add_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_menu_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-mdpi/ic_menu_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xhdpi/ic_add_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_place_black_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-hdpi/ic_place_black_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_place_black_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-mdpi/ic_place_black_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_menu_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xhdpi/ic_menu_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_place_black_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xhdpi/ic_place_black_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xxhdpi/ic_add_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_menu_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xxhdpi/ic_menu_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxxhdpi/ic_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xxxhdpi/ic_add_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_settings_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-hdpi/ic_settings_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_settings_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-mdpi/ic_settings_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_schedule_white_48dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xhdpi/ic_schedule_white_48dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_settings_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xhdpi/ic_settings_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_place_black_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xxhdpi/ic_place_black_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxxhdpi/ic_menu_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xxxhdpi/ic_menu_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxxhdpi/ic_place_black_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xxxhdpi/ic_place_black_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_settings_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xxhdpi/ic_settings_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxxhdpi/ic_settings_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zverik/giggity/master/app/src/main/res/drawable-xxxhdpi/ic_settings_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/xml/paths.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/gradle.properties:
--------------------------------------------------------------------------------
1 | android.defaults.buildfeatures.buildconfig=true
2 | android.nonFinalResIds=false
3 | android.nonTransitiveRClass=true
4 | android.useAndroidX=true
5 | // Screws up stacktraces.
6 | android.enableR8.fullMode=false
7 |
--------------------------------------------------------------------------------
/app/src/main/res/values-nl/arrays.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | - Klein
5 | - 3 regels
6 | - 2 regels
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/values-cs/arrays.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | - Malá
5 | - 3 řádky
6 | - 2 řádky
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/values-it/arrays.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | - Piccolo
5 | - 3 righe
6 | - 2 righe
7 |
8 |
9 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Mon Aug 17 09:23:18 BST 2020
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-all.zip
7 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/schedule_line_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/burger_menu_active_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/schedule_item_remind_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/res/values-de/arrays.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/values-fr/arrays.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | - Petite
5 | - 3 lignes
6 | - 2 lignes
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/menu/osc_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024062101,
3 | "url": "https://events.opensuse.org/conferences/oSC24/schedule.xml",
4 | "title": "openSUSE Conference 2024",
5 | "start": "2024-06-27",
6 | "end": "2024-06-29",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | ]
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/round_button.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/menu_gradient.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
9 |
--------------------------------------------------------------------------------
/menu/entreelibre2.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2021071800,
3 | "url": "https://framadrive.org/s/fPHajTWPGLwMrfF/download/Tracim.ics",
4 | "title": "Entrée Libre #2",
5 | "start": "2021-07-28",
6 | "end": "2021-07-31",
7 | "metadata": {
8 | "links": [
9 | {
10 | "url": "https://entreelibre.frama.site/",
11 | "title": "Site Web"
12 | }
13 | ]
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/menu/emf_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024052401,
3 | "url": "https://www.emfcamp.org/schedule/2024.frab",
4 | "title": "Electromagnetic Field 2024",
5 | "start": "2024-05-30",
6 | "end": "2024-06-02",
7 | "timezone": "Europe/London",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.emfcamp.org/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_arrow_back_white_32dp.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_arrow_forward_white_32dp.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/menu/datenspuren_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023091399,
3 | "url": "https://talks.datenspuren.de/ds23/schedule.xml",
4 | "title": "Datenspuren 2023",
5 | "start": "2023-09-15",
6 | "end": "2023-09-17",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://datenspuren.de/2023/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/fri3d_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024071802,
3 | "url": "https://content.fri3d.be/fri3dcamp2024/schedule/export/schedule.xml",
4 | "title": "Fri3d Camp 2024",
5 | "start": "2024-08-16",
6 | "end": "2024-08-18",
7 | "timezone": "Europe/Brussels",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://fri3d.be/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/newline2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023032800,
3 | "url": "https://events.hackerspace.gent/en/newline2023/public/schedule.xml",
4 | "title": "Newline 2023",
5 | "start": "2023-03-31",
6 | "end": "2023-04-02",
7 | "timezone": "Europe/Brussels",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://newline.gent/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/widget_head.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
10 |
--------------------------------------------------------------------------------
/menu/easterhegg22.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2025040900,
3 | "url": "https://cfp.eh22.easterhegg.eu/eh22/schedule/export/schedule.xml",
4 | "title": "Easterhegg 2025",
5 | "start": "2025-04-18",
6 | "end": "2025-04-21",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://eh22.easterhegg.eu/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/widget_bottom.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
10 |
--------------------------------------------------------------------------------
/menu/datenspuren_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024091600,
3 | "url": "https://talks.datenspuren.de/ds24/schedule/export/schedule.xml",
4 | "title": "Datenspuren 2024",
5 | "start": "2024-09-20",
6 | "end": "2024-09-22",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://datenspuren.de/2024/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/privacyweek_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019100400,
3 | "url": "https://fahrplan.privacyweek.at/schedule.xml",
4 | "title": "PrivacyWeek 2019",
5 | "start": "2019-10-21",
6 | "end": "2019-10-27",
7 | "metadata": {
8 | "icon": "https://privacyweek.at/icon-256x256.png",
9 | "links": [
10 | {
11 | "url": "https://privacyweek.at/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/debconf22.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022061400,
3 | "url": "https://debconf22.debconf.org/schedule/pentabarf.xml",
4 | "title": "DebConf 22",
5 | "start": "2022-07-17",
6 | "end": "2022-07-24",
7 | "timezone": "Europe/Belgrade",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://debconf22.debconf.org/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/indiafoss_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024090300,
3 | "url": "https://fossunited.org/files/calendar.ics",
4 | "title": "IndiaFOSS 2024",
5 | "start": "2024-09-07",
6 | "end": "2024-09-08",
7 | "timezone": "Asia/Kolkata",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://fossunited.org/indiafoss/2024",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
--------------------------------------------------------------------------------
/menu/kiwipycon_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023081301,
3 | "url": "https://pretalx.com/kiwi-pycon-xii-2023/schedule/export/schedule.xml",
4 | "title": "Kiwi PyCon XII 2023",
5 | "start": "2023-09-15",
6 | "end": "2023-09-17",
7 | "timezone": "Pacific/Auckland",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://kiwipycon.nz/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/pycon_es_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022092701,
3 | "url": "https://charlas.2022.es.pycon.org/pycones2022/schedule/export/schedule.xcal",
4 | "title": "PyCon Es 2022",
5 | "start": "2022-09-30",
6 | "end": "2022-10-02",
7 | "timezone": "Europe/Madrid",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2022.es.pycon.org/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/burger_menu_item.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
--------------------------------------------------------------------------------
/menu/fossgis_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024030700,
3 | "url": "https://pretalx.com/fossgis2024/schedule/export/schedule.xml",
4 | "title": "FOSSGIS-Konferenz 2024",
5 | "start": "2024-03-20",
6 | "end": "2024-03-23",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.fossgis-konferenz.de/2024/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/fossgis_2025.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2025012300,
3 | "url": "https://pretalx.com/fossgis2025/schedule/export/schedule.xml",
4 | "title": "FOSSGIS-Konferenz 2025",
5 | "start": "2025-03-26",
6 | "end": "2025-03-29",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.fossgis-konferenz.de/2025/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/ubuntu_summit_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024100900,
3 | "url": "https://events.canonical.com/event/51/event.ics?detail=contributions",
4 | "title": "Ubuntu Summit 2024",
5 | "start": "2024-10-25",
6 | "end": "2024-10-27",
7 | "timezone": "Europe/Amsterdam",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://ubuntu.com/summit",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/flosscon_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022052500,
3 | "url": "https://www.flosscon.org/conferences/FLOSSCon2022/schedule.xml",
4 | "title": "FLOSSCon 2022",
5 | "start": "2022-06-02",
6 | "end": "2022-06-03",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.flosscon.org/conferences/FLOSSCon2022",
12 | "title": "Site web"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/foss4g_europe_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024040400,
3 | "url": "https://talks.osgeo.org/foss4g-europe-2024/schedule/export/schedule.xml",
4 | "title": "FOSS4G Europe 2024",
5 | "start": "2024-07-03",
6 | "end": "2024-07-05",
7 | "timezone": "Europe/Tallinn",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2024.europe.foss4g.org/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/kicon_asia_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "title": "KiCon Asia 2024",
3 | "url": "https://pretalx.kicad.org/kicon-asia-2024/schedule/export/schedule.xml",
4 | "start": "2024-11-15",
5 | "end": "2024-11-16",
6 | "version": 2024111401,
7 | "timezone": "Asia/Shanghai",
8 | "metadata": {
9 | "links": [
10 | {
11 | "title": "Website",
12 | "url": "https://kicon.kicad.org/asia2024/en/"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/lit_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023042600,
3 | "url": "https://pretalx.luga.de/lit-2023/schedule/export/schedule.xml",
4 | "title": "Augsburger Linux-Infotag 2023",
5 | "start": "2023-04-29",
6 | "end": "2023-04-29",
7 | "timezone": "Europe/Brussels",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.luga.de/static/LIT-2023/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/lit_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024041300,
3 | "url": "https://pretalx.luga.de/lit-2024/schedule/export/schedule.xml",
4 | "title": "Augsburger Linux-Infotag 2024",
5 | "start": "2024-04-20",
6 | "end": "2024-04-20",
7 | "timezone": "Europe/Brussels",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.luga.de/static/LIT-2024/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/newline2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022081800,
3 | "url": "https://events.hackerspace.gent/en/newline2022/public/schedule.xml",
4 | "title": "Newline 2022",
5 | "start": "2022-09-02",
6 | "end": "2022-09-04",
7 | "timezone": "Europe/Brussels",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://hackerspace.gent/landing/newline.php",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/app/src/main/res/xml/widget_info.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
--------------------------------------------------------------------------------
/menu/datenspuren_2021.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2021091700,
3 | "url": "https://talks.datenspuren.de/ds21/schedule.xml",
4 | "title": "Datenspuren 2021",
5 | "start": "2021-09-17",
6 | "end": "2021-09-19",
7 | "metadata": {
8 | "icon": "https://www.c3d2.de/images/news/datenspuren-2021.png",
9 | "links": [
10 | {
11 | "url": "https://datenspuren.de/2021/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/kicon_europe_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "title": "KiCon Europe 2024",
3 | "url": "https://pretalx.kicad.org/kicon-europe-2024/schedule/export/schedule.xml",
4 | "start": "2024-09-19",
5 | "end": "2024-09-20",
6 | "version": 2024083001,
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "title": "Website",
12 | "url": "https://kicon.kicad.org/europe2024/"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/privacyweek_2018.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2018101900,
3 | "url": "https://fahrplan.privacyweek.at/pw18/schedule/export/schedule.xml",
4 | "title": "PrivacyWeek 2018",
5 | "start": "2018-10-22",
6 | "end": "2018-10-28",
7 | "metadata": {
8 | "icon": "https://privacyweek.at/icon-256x256.png",
9 | "links": [
10 | {
11 | "url": "https://privacyweek.at/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/scheduleviewactivity.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/menu/lit_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019022500,
3 | "url": "https://frab.luga.de/de/LIT2019/public/schedule.xml",
4 | "title": "Augsburger Linux-Infotag 2019",
5 | "start": "2019-04-06",
6 | "end": "2019-04-06",
7 | "metadata": {
8 | "icon": "https://luga-ev.github.io/frab-extras/Tux2.png",
9 | "links": [
10 | {
11 | "url": "https://www.luga.de/Aktionen/LIT-2019/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/tools/ggt.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | json="$1"
4 | if ! cat "$json" > /dev/null; then
5 | echo "Missing argument or could not read file?" >&2
6 | exit 1
7 | fi
8 |
9 | url="$(jq -r .url < "$json")"
10 | if [ -z "$url" ]; then
11 | echo "Could not parse JSON" >&2
12 | echo "Maybe: sudo apt-get install jq" >&2
13 | exit 1
14 | fi
15 |
16 | echo https://ggt.gaa.st#url="${url}"\&json="$(cat "$json" | jq -Mc "." | gzip -9 | base64 -w0 | tr +/ -_)"
17 |
--------------------------------------------------------------------------------
/menu/hope_2020.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2020061701,
3 | "url": "https://scheduler.hope.net/hope2020/schedule/export/schedule.xml",
4 | "title": "HOPE 2020",
5 | "start": "2020-07-25",
6 | "end": "2020-08-02",
7 | "metadata": {
8 | "icon": "https://pbs.twimg.com/profile_images/1194682670346907650/Uu73PLJc_200x200.jpg",
9 | "links": [
10 | {
11 | "url": "https://www.hope.net/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/opensouthcode_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019042600,
3 | "url": "https://www.opensouthcode.org/conferences/opensouthcode2019/schedule.xml",
4 | "title": "Opensouthcode 2019",
5 | "start": "2019-05-24",
6 | "end": "2019-05-25",
7 | "metadata": {
8 | "links": [
9 | {
10 | "url": "https://www.opensouthcode.org/",
11 | "title": "Website"
12 | }
13 | ],
14 | "icon": "https://www.opensouthcode.org/logo1.png"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/osc_2025.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2025031201,
3 | "url": "https://events.opensuse.org/conferences/oSC25/schedule.xml",
4 | "title": "openSUSE Conference 2025",
5 | "start": "2025-06-26",
6 | "end": "2025-06-28",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://events.opensuse.org/conferences/oSC25/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/hope_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022070801,
3 | "url": "https://scheduler.hope.net/new-hope/schedule/export/schedule.xml",
4 | "title": "HOPE 2022",
5 | "start": "2022-07-22",
6 | "end": "2022-07-24",
7 | "timezone": "America/New_York",
8 | "metadata": {
9 | "icon": "https://www.hope.net/img/hopexiv_192x192.png",
10 | "links": [
11 | {
12 | "url": "https://www.hope.net/",
13 | "title": "Website"
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/menu/sstic_2025.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2025040300,
3 | "url": "https://www.sstic.org/2025/programme.ics",
4 | "title": "Symposium sur la sécurité des technologies de l'information et des communications 2025",
5 | "start": "2025-06-04",
6 | "end": "2025-06-05",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.sstic.org/2025/news/",
12 | "title": "Site web"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/datenspuren_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019092000,
3 | "url": "https://datenspuren.de/2019/fahrplan/schedule.xml",
4 | "title": "Datenspuren 2019",
5 | "start": "2019-09-20",
6 | "end": "2019-09-22",
7 | "metadata": {
8 | "icon": "https://pbs.twimg.com/profile_images/1115200342654894087/KFpFqQBb_200x200.png",
9 | "links": [
10 | {
11 | "url": "https://datenspuren.de/2019/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/jdll_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019040409,
3 | "url": "https://pretalx.jdll.org/jdll2019/schedule.xml",
4 | "title": "Journées du Logiciel Libre 2019",
5 | "start": "2019-04-06",
6 | "end": "2019-04-07",
7 | "metadata": {
8 | "links": [
9 | {
10 | "url": "http://www.jdll.org/",
11 | "title": "Site web"
12 | },
13 | {
14 | "url": "http://www.jdll.org/pratique/plan/",
15 | "title": "Plan"
16 | }
17 | ]
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/menu/linux_plumbers_conference_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024091499,
3 | "url": "https://lpc.events/event/18/event.ics?detail=contributions",
4 | "title": "Linux Plumbers Conference 2024",
5 | "start": "2024-09-18",
6 | "end": "2024-09-20",
7 | "timezone": "Europe/Vienna",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://lpc.events/event/18/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/umdh_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023013001,
3 | "url": "https://pretalx.lebib.org/universit-d-hiver-2022/schedule/export/schedule.xml",
4 | "title": "Université d'hiver de l'Interhack 2023",
5 | "start": "2023-02-23",
6 | "end": "2023-02-26",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://pretalx.lebib.org/universit-d-hiver-2022/",
12 | "title": "Site web"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_clear_black_24dp.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/menu/cfgmgmtcamp_2019_ghent.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019011700,
3 | "url": "https://cfgmgmtcamp.eu/schedule/schedule.ics",
4 | "id": "CfgMgmtCamp 2019 Ghent",
5 | "title": "CfgMgmtCamp 2019 Ghent",
6 | "start": "2019-02-04",
7 | "end": "2019-02-05",
8 | "metadata": {
9 | "icon": "https://cfgmgmtcamp.eu/images/logo_name_big.png",
10 | "links": [
11 | {
12 | "url": "https://cfgmgmtcamp.eu/",
13 | "title": "Website"
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/menu/debconf21.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2021081000,
3 | "url": "https://debconf21.debconf.org/schedule/pentabarf.xml",
4 | "title": "DebConf 21",
5 | "start": "2021-08-24",
6 | "end": "2021-08-28",
7 | "metadata": {
8 | "icon": "https://debconf21.debconf.org/static/img/favicon/favicon-196.3b67242f2574.png",
9 | "links": [
10 | {
11 | "url": "https://debconf21.debconf.org/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/emf2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022052801,
3 | "url": "https://www.emfcamp.org/schedule/2022.frab",
4 | "title": "Electromagnetic Field 2022",
5 | "start": "2022-06-02",
6 | "end": "2022-06-05",
7 | "timezone": "Europe/London",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.emfcamp.org/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://www.emfcamp.org/about",
16 | "title": "FAQ"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/hackover_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023070600,
3 | "url": "https://talks.hackover.de/ho-2023/schedule.xml",
4 | "title": "Hackover 2023",
5 | "start": "2023-07-14",
6 | "end": "2023-07-16",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://hackover.de/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://tickets.hackover.de/ho23/",
16 | "title": "Tickets"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/tools/menu-indent.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/python3
2 |
3 | import json
4 | import re
5 | import sys
6 |
7 | if len(sys.argv) > 1:
8 | sys.stdin = open(sys.argv[1], "r")
9 |
10 | p = json.loads(sys.stdin.read())
11 |
12 | latlon1line = re.compile(r"(\"latlon\": \[)\s+([0-9.]+),\s+([0-9.]+)\s+(\])")
13 | res = latlon1line.sub(r"\1\2, \3\4", json.dumps(p, indent="\t", ensure_ascii=False))
14 |
15 | if len(sys.argv) > 1:
16 | open(sys.argv[1], "w").write(res)
17 | else:
18 | print(res)
19 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_calendar_24px.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/menu/jres_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019100301,
3 | "url": "https://conf-ng.jres.org/2019/rest/planning.ics",
4 | "title": "JRES 2019",
5 | "id": "JRES 2019",
6 | "start": "2019-12-03",
7 | "end": "2019-12-05",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.jres.org/fr/accueil/",
12 | "title": "Site Web"
13 | },
14 | {
15 | "title": "Inscription",
16 | "url": "https://www.jres.org/fr/inscriptions/"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/sfscon_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024091300,
3 | "url": "https://www.sfscon.it/?calendar=2024&format=xml",
4 | "title": "SFSCON 2024",
5 | "start": "2024-11-08",
6 | "end": "2024-11-09",
7 | "timezone": "Europe/Brussels",
8 | "metadata": {
9 | "icon": "https://www.sfscon.it/wp-content/uploads/2020/10/cropped-cropped-sfsconnew-180x180.png",
10 | "links": [
11 | {
12 | "url": "https://www.sfscon.it/",
13 | "title": "Website"
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/menu/vvoid-camp-2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022081800,
3 | "url": "https://pretalx.vvoid.camp/vvoid-camp-2022/schedule.xml",
4 | "title": "VVoid Camp 2022",
5 | "start": "2022-08-18",
6 | "end": "2022-08-21",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.vvoid.camp/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://vviki.vvoid.camp/",
16 | "title": "Wiki"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/fossasia_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022040400,
3 | "url": "https://api.eventyay.com/v1/events/6b901f56.ics?include_sessions",
4 | "title": "FOSSASIA Summit 2022",
5 | "start": "2022-04-07",
6 | "end": "2022-04-09",
7 | "timezone": "Asia/Singapore",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://summit.fossasia.org/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/fossasia_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023031600,
3 | "url": "https://api.eventyay.com/v1/events/7cfe0771.ics?include_sessions",
4 | "title": "FOSSASIA Summit 2023",
5 | "start": "2023-04-13",
6 | "end": "2023-04-15",
7 | "timezone": "Asia/Singapore",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://summit.fossasia.org/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/ietf104.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2016080500,
3 | "title": "IETF 104 Prague",
4 | "url": "https://datatracker.ietf.org/meeting/104/agenda.ics",
5 | "start": "2019-03-23",
6 | "end": "2019-03-29",
7 | "metadata": {
8 | "links": [
9 | {
10 | "url": "https://www.ietf.org/how/meetings/104/",
11 | "title": "Website"
12 | },
13 | {
14 | "url": "https://datatracker.ietf.org/meeting/104/floor-plan",
15 | "title": "Floor plans"
16 | }
17 | ]
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/menu/minidebconfindia2021.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2021012000,
3 | "url": "https://in2021.mini.debconf.org/schedule/pentabarf.xml",
4 | "title": "MiniDebConf India 2021",
5 | "start": "2021-01-23",
6 | "end": "2021-01-24",
7 | "metadata": {
8 | "icon": "https://in2021.mini.debconf.org/static/img/logo.8224b7f40c56.png",
9 | "links": [
10 | {
11 | "url": "https://in2021.mini.debconf.org/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/packaging_con_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023091101,
3 | "url": "https://cfp.packaging-con.org/2023/schedule/export/schedule.xml",
4 | "title": "PackagingCon 2023",
5 | "start": "2023-10-26",
6 | "end": "2023-10-28",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://packaging-con.org/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/piandmore_125.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2020022800,
3 | "url": "https://piandmore.de/de/conference/pam12-5/schedule/download",
4 | "title": "Pi and More 12½",
5 | "start": "2020-03-14",
6 | "end": "2020-03-14",
7 | "refresh_interval": 1800,
8 | "metadata": {
9 | "icon": "https://cmd-ev.github.io/assets/piandmore-square.png",
10 | "links": [
11 | {
12 | "url": "https://piandmore.de/de/conference/pam12-5/",
13 | "title": "Website"
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/menu/matomocamp_2021.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2021092700,
3 | "url": "https://schedule.matomocamp.org/matomocamp-2021/schedule/export/schedule.xml",
4 | "title": "MatomoCamp 2021",
5 | "start": "2021-11-04",
6 | "end": "2021-11-05",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "icon": "https://matomocamp.org/wp-content/uploads/2021/09/LogoOnly256.png",
10 | "links": [
11 | {
12 | "url": "https://matomocamp.org/",
13 | "title": "Website"
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/menu/pycon_fr_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019102401,
3 | "url": "https://www.pycon.fr/2019/pyconfr-2019.ics",
4 | "title": "PyConFR 2019",
5 | "id": "PyConFR 2019",
6 | "start": "2019-10-31",
7 | "end": "2019-11-03",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.pycon.fr/2019/",
12 | "title": "Site Web"
13 | },
14 | {
15 | "title": "Inscription",
16 | "url": "https://www.pycon.fr/2019/fr/schedule.html#register"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/seagl_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023110100,
3 | "url": "https://osem.seagl.org/conferences/seagl2023/schedule.xml",
4 | "title": "SeaGL 2023",
5 | "start": "2023-11-03",
6 | "end": "2023-11-04",
7 | "timezone": "US/Pacific",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://seagl.org/",
12 | "title": "Website"
13 | }
14 | ],
15 | "rooms": [
16 | {
17 | "name": "Room .*",
18 | "latlon": [47.65538, -122.30547]
19 | }
20 | ]
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/menu/sotm_eu_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024071600,
3 | "url": "https://sotm.osmz.ru/sotmeu24.xml",
4 | "title": "State of the Map Europe 2024",
5 | "start": "2024-07-18",
6 | "end": "2024-07-21",
7 | "timezone": "Europe/Warsaw",
8 | "refresh_interval": 7200,
9 | "metadata": {
10 | "links": [
11 | {
12 | "url": "https://stateofthemap.eu/",
13 | "title": "Website"
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/menu/tuebix_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019053100,
3 | "url": "https://www.tuebix.org/2019/giggity.xml",
4 | "title": "Tübix 2019",
5 | "start": "2019-07-06",
6 | "end": "2019-07-06",
7 | "metadata": {
8 | "icon": "https://www.tuebix.org/2017/giggity.icon.png",
9 | "links": [
10 | {
11 | "url": "https://www.tuebix.org/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://www.tuebix.org/anfahrt/",
16 | "title": "Anfahrt"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/pycon_fr_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024091701,
3 | "url": "https://www.pycon.fr/2024/fr/calendar.ics",
4 | "title": "PyConFR 2024",
5 | "start": "2024-10-31",
6 | "end": "2024-11-03",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.pycon.fr/2024/fr/",
12 | "title": "Site Web"
13 | },
14 | {
15 | "title": "Inscription",
16 | "url": "https://www.pycon.fr/2024/fr/schedule.html#register"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/spathum24.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024071100,
3 | "url": "https://pretalx.com/spathum24/schedule.xml",
4 | "title": "Spatial Humanities 2024",
5 | "start": "2024-09-25",
6 | "end": "2024-09-27",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://spathum.uni-bamberg.de/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://registration.spathum.uni-bamberg.de/2024/",
16 | "title": "Tickets"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/opensouthcode_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023051502,
3 | "url": "https://www.opensouthcode.org/conferences/opensouthcode2023/schedule.xml",
4 | "title": "Opensouthcode 2023",
5 | "start": "2023-06-09",
6 | "end": "2023-06-10",
7 | "timezone": "Europe/Madrid",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.opensouthcode.org/conferences/opensouthcode2023",
12 | "title": "Website"
13 | }
14 | ],
15 | "icon": "https://www.opensouthcode.org/logo1.png"
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/menu/opensouthcode_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024051901,
3 | "url": "https://www.opensouthcode.org/conferences/opensouthcode2024/schedule.xml",
4 | "title": "OpenSouthCode 2024",
5 | "start": "2024-06-21",
6 | "end": "2024-06-22",
7 | "timezone": "Europe/Madrid",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.opensouthcode.org/conferences/opensouthcode2024",
12 | "title": "Website"
13 | }
14 | ],
15 | "icon": "https://www.opensouthcode.org/logo1.png"
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/menu/piandmore_13.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023041300,
3 | "url": "https://piandmore.de/de/conference/pam13/schedule/download",
4 | "title": "Pi and More 13",
5 | "start": "2023-04-22",
6 | "end": "2023-04-22",
7 | "timezone": "Europe/Berlin",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "icon": "https://cmd-ev.github.io/assets/piandmore-square.png",
11 | "links": [
12 | {
13 | "url": "https://piandmore.de/de/conference/pam13/",
14 | "title": "Website"
15 | }
16 | ]
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/menu/parisweb_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022100100,
3 | "url": "https://www.paris-web.fr/2022/conferences-parisweb-2022.ics",
4 | "title": "Paris Web 2022",
5 | "start": "2022-10-06",
6 | "end": "2022-10-08",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.paris-web.fr/2022/",
12 | "title": "Site Web"
13 | },
14 | {
15 | "url": "https://inscriptions.paris-web.fr/",
16 | "title": "Tarifs et inscription"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/jdll_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022031400,
3 | "url": "https://pretalx.jdll.org/jdll2022/schedule.xml",
4 | "title": "Journées du Logiciel Libre 2022",
5 | "start": "2022-04-02",
6 | "end": "2022-04-03",
7 | "timezone": "Europe/Brussels",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.jdll.org/",
12 | "title": "Site web"
13 | },
14 | {
15 | "url": "https://www.jdll.org/contact-and-informations",
16 | "title": "Informations pratiques"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/jdll_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023032500,
3 | "url": "https://pretalx.jdll.org/jdll2023/schedule.xml",
4 | "title": "Journées du Logiciel Libre 2023",
5 | "start": "2023-04-01",
6 | "end": "2023-04-02",
7 | "timezone": "Europe/Brussels",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.jdll.org/",
12 | "title": "Site web"
13 | },
14 | {
15 | "url": "https://www.jdll.org/contact-and-informations",
16 | "title": "Informations pratiques"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/jdll_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024041900,
3 | "url": "https://pretalx.jdll.org/jdll2024/schedule.xml",
4 | "title": "Journées du Logiciel Libre 2024",
5 | "start": "2024-05-25",
6 | "end": "2024-05-26",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.jdll.org/",
12 | "title": "Site web"
13 | },
14 | {
15 | "url": "https://www.jdll.org/contact-and-informations",
16 | "title": "Informations pratiques"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/gpn21.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023060100,
3 | "url": "https://cfp.gulas.ch/gpn21/schedule/export/schedule.xml",
4 | "title": "21. Gulaschprogrammiernacht",
5 | "start": "2023-06-08",
6 | "end": "2023-06-11",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://entropia.de/GPN21",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://entropia.de/GPN21:FAQ",
16 | "title": "FAQ"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/gpn22.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024052700,
3 | "url": "https://cfp.gulas.ch/gpn22/schedule/export/schedule.xml",
4 | "title": "22. Gulaschprogrammiernacht",
5 | "start": "2024-05-30",
6 | "end": "2024-06-02",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://entropia.de/GPN22",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://entropia.de/GPN22:FAQ",
16 | "title": "FAQ"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/moca2024_it.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024091299,
3 | "url": "https://ics.moca.camp/schedule.ics",
4 | "title": "MOCA - Metro Olografix Camp",
5 | "start": "2024-09-13",
6 | "end": "2024-09-15",
7 | "timezone": "Europe/Rome",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://moca.camp",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://www.olografix.org",
16 | "title": "The association behind the event"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/round_button.xml:
--------------------------------------------------------------------------------
1 |
2 |
12 |
13 |
--------------------------------------------------------------------------------
/menu/35c3_main_rooms_only.json:
--------------------------------------------------------------------------------
1 | {
2 | "title": "35c3 - main rooms only",
3 | "metadata": {
4 | "links": [
5 | {
6 | "url": "https://events.ccc.de/congress/2018/wiki/index.php/Main_Page",
7 | "title": "Wiki"
8 | },
9 | {
10 | "title": "Weblog",
11 | "url": "https://events.ccc.de/"
12 | }
13 | ]
14 | },
15 | "url": "https://fahrplan.events.ccc.de/congress/2018/Fahrplan/schedule.xml",
16 | "start": "2018-12-27",
17 | "end": "2018-12-30",
18 | "refresh_interval": 1800,
19 | "version": 2018122701
20 | }
21 |
--------------------------------------------------------------------------------
/menu/bibliocon24.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024030401,
3 | "url": "https://cloud.bib.uni-mannheim.de/s/3r6Ziz4tsn2oN9g/download/bibliocon24.xml",
4 | "title": "BiblioCon 2024",
5 | "start": "2024-06-04",
6 | "end": "2024-06-07",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2024.bibliocon.de/",
12 | "title": "Webseite"
13 | },
14 | {
15 | "url": "https://2024.bibliocon.de/informationen-von-a-z/",
16 | "title": "Informationen von A-Z"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/installfest_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019028002,
3 | "url": "https://installfest.cz/if19/schedule.xml",
4 | "title": "Installfest 2019",
5 | "start": "2019-03-02",
6 | "end": "2019-03-03",
7 | "metadata": {
8 | "icon": "https://installfest.cz/if19/images/logo-tux.png",
9 | "links": [
10 | {
11 | "url": "https://installfest.cz",
12 | "title": "Web Installfestu"
13 | },
14 | {
15 | "url": "https://installfest.cz/if19/info",
16 | "title": "Info o konferenci"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/35c3_new_and_merged.json:
--------------------------------------------------------------------------------
1 | {
2 | "title": "35c3 - new and merged",
3 | "metadata": {
4 | "links": [
5 | {
6 | "url": "https://events.ccc.de/congress/2018/wiki/index.php/Main_Page",
7 | "title": "Wiki"
8 | },
9 | {
10 | "title": "Weblog",
11 | "url": "https://events.ccc.de/"
12 | }
13 | ]
14 | },
15 | "url": "https://streaming.media.ccc.de/configs/conferences/35c3/everything.schedule.xml",
16 | "start": "2018-12-27",
17 | "end": "2018-12-30",
18 | "refresh_interval": 1800,
19 | "version": 2018122701
20 | }
21 |
--------------------------------------------------------------------------------
/menu/hackerhotel_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023021100,
3 | "url": "https://pretalx.hackerhotel.nl/hackerhotel-2023/schedule.xml",
4 | "title": "HackerHotel 2023",
5 | "start": "2023-02-10",
6 | "end": "2023-02-12",
7 | "timezone": "Europe/Amsterdam",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://hackerhotel.nl/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://mapcomplete.osm.be/indoors?z=18&lat=52.22072&lon=5.721302&language=en",
16 | "title": "Map"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/fossasia_2021.json:
--------------------------------------------------------------------------------
1 | {
2 | "start": "2021-03-13",
3 | "end": "2021-03-21",
4 | "version": 2021031100,
5 | "url": "https://api.eventyay.com/v1/events/fa96ae2c.ics?include_sessions",
6 | "title": "FOSSASIA Summit 2021",
7 | "metadata": {
8 | "icon": "https://pbs.twimg.com/profile_images/1141238022/fossasia-cubelogo_200x200.jpg",
9 | "links": [
10 | {
11 | "url": "https://summit.fossasia.org/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/menu/hackerhotel_2025.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2025021300,
3 | "url": "https://pretalx.hackerhotel.nl/2025/schedule.xml",
4 | "title": "HackerHotel 2025",
5 | "start": "2025-02-14",
6 | "end": "2025-02-16",
7 | "timezone": "Europe/Amsterdam",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://hackerhotel.nl/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://mapcomplete.org/indoors?z=18.9&lat=52.220624480776905&lon=5.721273808942783&language=en",
16 | "title": "Map"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/cfgmgmtcamp_2024_ghent.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024011600,
3 | "url": "https://cfp.cfgmgmtcamp.org/2024/schedule/export/schedule.xml",
4 | "title": "Config Management Camp 2024 Ghent",
5 | "start": "2024-02-05",
6 | "end": "2024-02-07",
7 | "timezone": "Europe/Brussels",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://cfgmgmtcamp.eu/ghent2024/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://cfgmgmtcamp.eu/ghent2024/codeofconduct/",
16 | "title": "Code of conduct"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/geopython_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022060601,
3 | "url": "https://submit.geopython.net/geopython-2022/schedule/export/schedule.xml",
4 | "title": "GeoPython 2022",
5 | "start": "2022-06-20",
6 | "end": "2022-06-22",
7 | "timezone": "Europe/Zurich",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2022.geopython.net/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://www.basel.com/en/Basel/ukv/result?tt=4tk0es4da6i63pa7esqhqp7ldv",
16 | "title": "Hotels in Basel"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/hackerhotel_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024020900,
3 | "url": "https://pretalx.hackerhotel.nl/hackerhotel-2024/schedule.xml",
4 | "title": "HackerHotel 2024",
5 | "start": "2024-02-09",
6 | "end": "2024-02-11",
7 | "timezone": "Europe/Amsterdam",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://hackerhotel.nl/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://mapcomplete.org/indoors?z=18.9&lat=52.220624480776905&lon=5.721273808942783&language=en",
16 | "title": "Map"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_search_black_24dp.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/menu/bibliocon25.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2025030601,
3 | "url": "https://cloud.bib.uni-mannheim.de/public.php/dav/files/MRwnBF84RfdJw55/",
4 | "title": "Bibliothekskongress 2025",
5 | "start": "2025-06-24",
6 | "end": "2025-06-27",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2025.bid-kongress.de/",
12 | "title": "Webseite"
13 | },
14 | {
15 | "url": "https://2025.bid-kongress.de/der-kongress/informationen-von-a-z/",
16 | "title": "Informationen von A-Z"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/thsf_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023042300,
3 | "url": "https://23.thsf.net/thsf-2023/schedule/export/schedule.xml",
4 | "title": "Toulouse Hacker Space Factory 2023",
5 | "start": "2023-05-26",
6 | "end": "2023-05-28",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.thsf.net/",
12 | "title": "Site web"
13 | }
14 | ],
15 | "rooms": [
16 | {
17 | "name": "Salle 1 Cinema",
18 | "show_name": "Salle 1 Cinema",
19 | "latlon": [43.63963, 1.45202]
20 | }
21 | ]
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/menu/cloudland_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023040522,
3 | "url": "https://dcnc-eu.github.io/lineup/cloudland23.ics",
4 | "title": "CloudLand 2023 - Das Cloud Native(s) Festival",
5 | "start": "2023-06-20",
6 | "end": "2023-06-23",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "icon": "https://dcnc-eu.github.io/lineup/cloudland23.png",
10 | "links": [
11 | {
12 | "url": "https://www.cloudland.org/de/home/",
13 | "title": "Website"
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/menu/ripe79.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019100802,
3 | "url": "https://ripe79.ripe.net/wp-admin/admin-post.php?action=mps_get_agenda_ics",
4 | "id": "RIPE 79 Agenda",
5 | "title": "RIPE 79",
6 | "start": "2019-10-14",
7 | "end": "2019-10-18",
8 | "metadata": {
9 | "icon": "https://i.sigio.nl/ripe.png",
10 | "links": [
11 | {
12 | "url": "https://ripe79.ripe.net/",
13 | "title": "Ripe 79 Website"
14 | },
15 | {
16 | "url": "https://ripe79.ripe.net/programme/meeting-plan/",
17 | "title": "Conference Program (website)"
18 | }
19 | ]
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_history_black_24dp.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/menu/geodaysit_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023060901,
3 | "url": "https://talks.osgeo.org/foss4g-it-2023/schedule/export/schedule.xml",
4 | "title": "GEOdaysIT 2023",
5 | "start": "2023-06-12",
6 | "end": "2023-07-17",
7 | "timezone": "Europe/Rome",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2023.geodaysit.it/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-night-v29/ic_history_black_24dp.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/menu/pses_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024041400,
3 | "url": "https://programme.passageenseine.fr/index.ics",
4 | "title": "Pas Sage en Seine 2024",
5 | "start": "2024-05-30",
6 | "end": "2024-06-02",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "icon": "https://mamot.fr/system/accounts/avatars/000/212/345/original/bf5fc3bbd9175137.png",
10 | "links": [
11 | {
12 | "url": "https://passageenseine.fr/",
13 | "title": "Site web"
14 | },
15 | {
16 | "url": "https://programme.passageenseine.fr/",
17 | "title": "Programme web"
18 | }
19 | ]
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/menu/easterhegg20.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023040500,
3 | "url": "https://cfp.eh20.easterhegg.eu/eh20/schedule.xml",
4 | "title": "Easterhegg 20",
5 | "start": "2023-04-07",
6 | "end": "2023-04-10",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://eh20.easterhegg.eu/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://presale.eh20.easterhegg.eu/",
16 | "title": "Tickets"
17 | },
18 | {
19 | "url": "https://engel.eh20.easterhegg.eu/login",
20 | "title": "Angel Center"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/menu/iger_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023070600,
3 | "url": "https://cfp.fairydust.reisen/iger-2023/schedule.xml",
4 | "title": "IGER 2023",
5 | "start": "2023-07-20",
6 | "end": "2023-07-23",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://fairydust.reisen/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://tickets.fairydust.reisen/iger-2023/",
16 | "title": "Tickets"
17 | },
18 | {
19 | "url": "https://md.fairydust.reisen/start",
20 | "title": "Public Meta-Pad"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/menu/pgconfeu2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022101400,
3 | "url": "https://www.postgresql.eu/events/pgconfeu2022/schedule.xml",
4 | "title": "PGConf.EU 2022",
5 | "start": "2022-10-25",
6 | "end": "2022-10-28",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2022.pgconf.eu/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2022.pgconf.eu/venue/",
16 | "title": "Venue"
17 | },
18 | {
19 | "url": "https://2022.pgconf.eu/code-of-conduct/",
20 | "title": "Code of Conduct"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/menu/rml_13.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019042600,
3 | "url": "http://rml13.creationmonetaire.info/rml.ics",
4 | "id": "RML13",
5 | "title": "RML 13",
6 | "start": "2019-05-23",
7 | "end": "2019-05-26",
8 | "metadata": {
9 | "icon": "https://git.duniter.org/nodes/typescript/duniter/raw/dev/images/450%C3%97450.png",
10 | "links": [
11 | {
12 | "url": "http://rml13.creationmonetaire.info/",
13 | "title": "Site Web"
14 | }
15 | ],
16 | "rooms": [
17 | {
18 | "name": "Cyberbodega.*",
19 | "latlon": [42.695884249268495, 2.8846125304698944]
20 | }
21 | ]
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/menu/jres_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022030800,
3 | "url": "https://conf-ng.jres.org/2021/rest/planning.ics",
4 | "title": "JRES 2022",
5 | "start": "2022-05-17",
6 | "end": "2022-05-20",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.jres.org/",
12 | "title": "Site Web"
13 | },
14 | {
15 | "url": "https://www.jres.org/inscriptions/",
16 | "title": "Inscription"
17 | }
18 | ],
19 | "icon": "https://mastodon.gougere.fr/system/media_attachments/files/107/921/767/770/045/210/original/2d9437c0e1a4f80a.png"
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/menu/sotm_2021.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2021070100,
3 | "url": "https://sotm.osmz.ru/2021.xml",
4 | "title": "State of the Map 2021",
5 | "start": "2021-07-09",
6 | "end": "2021-07-11",
7 | "metadata": {
8 | "icon": "https://2021.stateofthemap.org/img/sotm_2021-logo-small.png",
9 | "links": [
10 | {
11 | "url": "https://2021.stateofthemap.org/",
12 | "title": "Website"
13 | }
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/app/src/test/java/android/util/Log.java:
--------------------------------------------------------------------------------
1 | package android.util;
2 |
3 | public class Log {
4 | public static int d(String tag, String msg) {
5 | System.out.println("D " + tag + ": " + msg);
6 | return 0;
7 | }
8 |
9 | public static int i(String tag, String msg) {
10 | System.out.println("I " + tag + ": " + msg);
11 | return 0;
12 | }
13 |
14 | public static int w(String tag, String msg) {
15 | System.out.println("W " + tag + ": " + msg);
16 | return 0;
17 | }
18 |
19 | public static int e(String tag, String msg) {
20 | System.out.println("E " + tag + ": " + msg);
21 | return 0;
22 | }
23 | }
--------------------------------------------------------------------------------
/menu/alchimie_13.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019102300,
3 | "url": "http://triplea.fr/alchimie/documents/alchimie13.ics",
4 | "id": "Alchimie 13",
5 | "title": "Alchimie 13",
6 | "start": "2019-11-01",
7 | "end": "2019-11-03",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://triplea.fr/alchimie/",
12 | "title": "Site Web"
13 | },
14 | {
15 | "url": "https://triplea.fr/alchimie/pages/reglement_general.php",
16 | "title": "Règlement"
17 | },
18 | {
19 | "url": "http://alchimie.party/",
20 | "title": "Serveur de vote"
21 | }
22 | ]
23 | }
24 | }
25 |
26 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_search_white_24dp.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/menu/forum_php_2020.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2020092600,
3 | "url": "https://afup.org/event/forumphp2020/planning.ics",
4 | "title": "Forum PHP 2020",
5 | "start": "2020-10-22",
6 | "end": "2020-10-23",
7 | "metadata": {
8 | "links": [
9 | {
10 | "url": "https://event.afup.org/",
11 | "title": "Site Web"
12 | },
13 | {
14 | "url": "https://afup.org/event/forumphp2020enligne/tickets",
15 | "title": "Tarifs et inscription"
16 | },
17 | {
18 | "url": "https://event.afup.org/afup-day-2020/infos-pratiques-faq/",
19 | "title": "Infos pratiques & FAQ"
20 | }
21 | ]
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/menu/geopython_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024052701,
3 | "url": "https://submit.geopython.net/geopython-2024/schedule/export/schedule.xml",
4 | "title": "GeoPython 2024",
5 | "start": "2024-05-27",
6 | "end": "2024-05-29",
7 | "timezone": "Europe/Zurich",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2024.geopython.net/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2024.geopython.net/coc",
16 | "title": "Code of conduct"
17 | },
18 | {
19 | "url": "https://2024.geopython.net/tickets",
20 | "title": "Tickets"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/menu/kontaktdaskulturfestival2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024051701,
3 | "url": "https://cfp.kntkt.de/kontakt-2024/schedule.xml",
4 | "title": "kontakt - Das Kulturfestival 2024",
5 | "start": "2024-05-23",
6 | "end": "2024-05-26",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://kontakt-bamberg.de/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://helfen.kntkt.de/",
16 | "title": "Mitmachen"
17 | },
18 | {
19 | "url": "https://kontakt-bamberg.de/mithelfen-2",
20 | "title": "Aufbau"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/menu/passthesalt_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022060800,
3 | "url": "https://cfp.pass-the-salt.org/pts2022/schedule/export/schedule.xml",
4 | "title": "Pass the SALT 2022",
5 | "start": "2022-07-04",
6 | "end": "2022-07-06",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2022.pass-the-salt.org/",
12 | "title": "Site web"
13 | }
14 | ],
15 | "rooms": [
16 | {
17 | "name": "Amphi.*",
18 | "latlon": [50.60776, 3.13637]
19 | },
20 | {
21 | "name": "Workshop.*",
22 | "latlon": [50.60776, 3.13637]
23 | }
24 | ]
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/menu/sotm_eu_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023111001,
3 | "url": "https://sotm.osmz.ru/sotmeu2023.xml",
4 | "title": "State of the Map Europe 2023",
5 | "start": "2023-11-10",
6 | "end": "2023-11-12",
7 | "timezone": "Europe/Brussels",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://stateofthemap.eu/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://stateofthemap.eu/code-of-conduct",
16 | "title": "Code of conduct"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-night-v29/ic_search_black_24dp.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/test/resources/jres_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022030800,
3 | "url": "https://conf-ng.jres.org/2021/rest/planning.ics",
4 | "title": "JRES 2022",
5 | "start": "2022-05-17",
6 | "end": "2022-05-20",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.jres.org/",
12 | "title": "Site Web"
13 | },
14 | {
15 | "url": "https://www.jres.org/inscriptions/",
16 | "title": "Inscription"
17 | }
18 | ],
19 | "icon": "https://mastodon.gougere.fr/system/media_attachments/files/107/921/767/770/045/210/original/2d9437c0e1a4f80a.png"
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/menu/foss4g_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024111500,
3 | "url": "https://sotm.osmz.ru/f2024.xml",
4 | "title": "FOSS4G 2024",
5 | "start": "2024-12-02",
6 | "end": "2024-12-06",
7 | "timezone": "America/Belem",
8 | "metadata": {
9 | "icon": "https://textual.ru/foss4g_2024.png",
10 | "links": [
11 | {
12 | "url": "https://2024.foss4g.org/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://2024.foss4g.org/en/map/",
17 | "title": "Map"
18 | },
19 | {
20 | "url": "https://2024.foss4g.org/en/code-of-conduct/",
21 | "title": "Code of Conduct"
22 | }
23 | ]
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/menu/grcon23.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023082500,
3 | "url": "https://events.gnuradio.org/event/21/event.ics?scope=contribution",
4 | "title": "GNU Radio Conference 2023",
5 | "start": "2023-09-05",
6 | "end": "2023-09-09",
7 | "timezone": "America/Phoenix",
8 | "metadata": {
9 | "icon": "https://www.gnuradio.org/giggity-grcon23-logo.png",
10 | "links": [
11 | {
12 | "url": "https://events.gnuradio.org/event/21/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://www.gnuradio.org",
17 | "title": "Project Website"
18 | }
19 | ]
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/menu/nixcon2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022101100,
3 | "url": "https://pretalx.com/nixcon-2022/schedule/export/schedule.xml",
4 | "title": "NixCon 2022",
5 | "start": "2022-10-20",
6 | "end": "2022-10-22",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2022.nixcon.org/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://tickets.nixcon.org/2022/",
16 | "title": "Tickets"
17 | },
18 | {
19 | "url": "https://discourse.nixos.org/t/nixcon-2022-sponsorship-opportunities/20603",
20 | "title": "Sponsor"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/menu/oss_eu_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019102800,
3 | "url": "https://osseu19.sched.com/all.ics",
4 | "title": "Open Source Summit + Embedded Linux Conference Europe 2019",
5 | "id": "osseu19",
6 | "start": "2019-10-28",
7 | "end": "2019-11-01",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://events19.linuxfoundation.org/events/open-source-summit-europe-2019/",
12 | "title": "OSSEU Website"
13 | },
14 | {
15 | "url": "https://events19.linuxfoundation.org/events/embedded-linux-conference-europe-2019/",
16 | "title": "Embedded Linux Conference Website"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/sotm_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024082201,
3 | "url": "https://sotm.osmz.ru/sotm2024.xml",
4 | "title": "State of the Map 2024",
5 | "start": "2024-09-06",
6 | "end": "2024-09-08",
7 | "timezone": "Africa/Nairobi",
8 | "metadata": {
9 | "icon": "https://textual.ru/sotm2024_icon.png",
10 | "links": [
11 | {
12 | "url": "https://2024.stateofthemap.org/",
13 | "title": "Website"
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/menu/cccamp19_main_rooms_only.json:
--------------------------------------------------------------------------------
1 | {
2 | "title": "Chaos Communication Camp 2019 - main rooms only",
3 | "metadata": {
4 | "links": [
5 | {
6 | "url": "https://events.ccc.de/camp/2019/wiki/Main_Page",
7 | "title": "Wiki"
8 | },
9 | {
10 | "title": "Map",
11 | "url": "https://map.c3noc.net/"
12 | },
13 | {
14 | "title": "Weblog",
15 | "url": "https://events.ccc.de/"
16 | }
17 | ]
18 | },
19 | "url": "https://fahrplan.events.ccc.de/camp/2019/Fahrplan/schedule.xml",
20 | "start": "2019-08-21",
21 | "end": "2019-08-25",
22 | "refresh_interval": 1800,
23 | "version": 2019080501
24 | }
25 |
--------------------------------------------------------------------------------
/menu/foss4g_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023062200,
3 | "url": "https://talks.osgeo.org/foss4g-2023/schedule/export/schedule.xml",
4 | "title": "FOSS4G 2023",
5 | "start": "2023-06-28",
6 | "end": "2023-06-30",
7 | "timezone": "Europe/Belgrade",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2023.foss4g.org/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2023.foss4g.org/attending/accomodation/",
16 | "title": "Accommodation"
17 | },
18 | {
19 | "url": "https://2023.foss4g.org/code-of-conduct/",
20 | "title": "Code of Conduct"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/app/src/main/res/values-night-v29/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
12 |
13 |
--------------------------------------------------------------------------------
/app/src/main/res/values-v27/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
12 |
13 |
--------------------------------------------------------------------------------
/menu/hackmas24.json:
--------------------------------------------------------------------------------
1 | {
2 | "title": "Håck ma's Castle",
3 | "metadata": {
4 | "links": [
5 | {
6 | "title": "Website",
7 | "url": "https://hack-mas.at/"
8 | },
9 | {
10 | "title": "Openki",
11 | "url": "https://sessions.hack-mas.at/"
12 | }
13 | ]
14 | },
15 | "url": "https://sessions.hack-mas.at/api/0/xml/schedule?limit=999",
16 | "timezone": "Europe/Vienna",
17 | "start": "2024-08-29",
18 | "end": "2024-09-01",
19 | "refresh_interval": 86400,
20 | "version": 2024082242
21 | }
22 |
--------------------------------------------------------------------------------
/menu/pyladiescon_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023112101,
3 | "url": "https://pretalx.com/pyladiescon-2023/schedule/export/schedule.xml",
4 | "title": "PyLadiesCon 2023",
5 | "start": "2023-12-01",
6 | "end": "2023-12-03",
7 | "timezone": "Etc/UTC",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://pyladies.com/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://events.hubilo.com/pyladiescon2023/register",
16 | "title": "Register"
17 | },
18 | {
19 | "url": "https://conference.pyladies.com/about.html#coc",
20 | "title": "Code of conduct"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/menu/everything_open_2025.json:
--------------------------------------------------------------------------------
1 | {
2 | "start": "2025-01-20",
3 | "end": "2025-01-22",
4 | "version": 2024120501,
5 | "url": "https://2025.everythingopen.au/schedule/conference.ics",
6 | "title": "Everything Open 2025",
7 | "timezone": "Australia/Adelaide",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2025.everythingopen.au",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2025.everythingopen.au/about/location/",
16 | "title": "Location"
17 | },
18 | {
19 | "url": "https://2025.everythingopen.au/schedule/",
20 | "title": "Online schedule"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/menu/sotm_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022080901,
3 | "url": "https://sotm.osmz.ru/2022.xml",
4 | "title": "State of the Map 2022",
5 | "start": "2022-08-19",
6 | "end": "2022-08-21",
7 | "timezone": "Europe/Rome",
8 | "metadata": {
9 | "icon": "https://2022.stateofthemap.org/img/icons/apple-touch-icon.png",
10 | "links": [
11 | {
12 | "url": "https://2022.stateofthemap.org/",
13 | "title": "Website"
14 | }
15 | ]
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/menu/vcfb_2020.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2020100901,
3 | "url": "https://vcfb.de/2020/schedule.xml",
4 | "title": "Vintage Computing Festival Berlin 2020",
5 | "start": "2020-10-10",
6 | "end": "2020-10-11",
7 | "refresh_interval": 1800,
8 | "metadata": {
9 | "icon": "https://wiki.vcfb.de/2020/_media/wiki:logo.png",
10 | "links": [
11 | {
12 | "url": "https://vcfb.de/2020/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://wiki.vcfb.de/2020/",
17 | "title": "Event Wiki"
18 | },
19 | {
20 | "url": "https://wiki.vcfb.de/2020/stream",
21 | "title": "Stream"
22 | }
23 | ]
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/menu/sfscon_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022110400,
3 | "url": "https://www.sfscon.it/?calendar=2022&format=xml",
4 | "title": "SFScon 2022",
5 | "start": "2022-11-11",
6 | "end": "2022-11-12",
7 | "timezone": "Europe/Brussels",
8 | "metadata": {
9 | "icon": "https://www.sfscon.it/wp-content/uploads/2020/10/cropped-cropped-sfsconnew-180x180.png",
10 | "links": [
11 | {
12 | "url": "https://www.sfscon.it/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://cloud.opendatahub.com/index.php/s/k9E3CEmeZcjN9Tq",
17 | "title": "Attendee Guide",
18 | "type": "application/pdf"
19 | }
20 | ]
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/menu/38c3_merged.json:
--------------------------------------------------------------------------------
1 | {
2 | "title": "38C3 - merged",
3 | "metadata": {
4 | "links": [
5 | {
6 | "url": "https://events.ccc.de/congress/2024/infos/startpage.html",
7 | "title": "Website"
8 | },
9 | {
10 | "url": "https://events.ccc.de/congress/2024/hub/en/wiki/start/",
11 | "title": "Wiki"
12 | },
13 | {
14 | "title": "Weblog",
15 | "url": "https://events.ccc.de/"
16 | }
17 | ]
18 | },
19 | "url": "https://api.events.ccc.de/congress/2024/schedule.xml",
20 | "start": "2024-12-27",
21 | "end": "2024-12-30",
22 | "timezone": "Europe/Berlin",
23 | "refresh_interval": 1800,
24 | "version": 2024121702
25 | }
26 |
--------------------------------------------------------------------------------
/menu/libreplanet_2020.json:
--------------------------------------------------------------------------------
1 | {
2 | "start": "2020-03-14",
3 | "end": "2020-03-15",
4 | "version": 2020030900,
5 | "url": "https://libreplanet.org/2020/lp2020-schedule.ics",
6 | "title": "LibrePlanet 2020",
7 | "metadata": {
8 | "icon": "https://libreplanet.org/2020/assets/img/logo.png",
9 | "links": [
10 | {
11 | "url": "https://libreplanet.org/2020/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://libreplanet.org/2020/live/",
16 | "title": "Livestream"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/libreplanet_2021.json:
--------------------------------------------------------------------------------
1 | {
2 | "start": "2021-03-20",
3 | "end": "2021-03-21",
4 | "version": 2021031000,
5 | "url": "https://libreplanet.org/2021/lp2021-schedule.ics",
6 | "title": "LibrePlanet 2021",
7 | "metadata": {
8 | "icon": "https://libreplanet.org/2021/assets/img/logo.png",
9 | "links": [
10 | {
11 | "url": "https://libreplanet.org/2021/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://libreplanet.org/2021/live/",
16 | "title": "Livestream"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/menu/all_systems_go_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023081901,
3 | "url": "https://cfp.all-systems-go.io/all-systems-go-2023/schedule/export/schedule.xml",
4 | "title": "All Systems Go! 2023",
5 | "start": "2023-09-13",
6 | "end": "2023-09-14",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://all-systems-go.io/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://all-systems-go.io/code-of-conduct/",
16 | "title": "Code of conduct"
17 | },
18 | {
19 | "url": "https://ti.to/all-systems-go/all-systems-go-2023",
20 | "title": "Tickets"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/menu/kielux_lpd_2020.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2020090600,
3 | "url": "https://kielux.de/content/calendars/LPD20.ics",
4 | "title": "Kieler Linux Presentation Day 2020.2",
5 | "start": "2020-09-17",
6 | "end": "2020-09-17",
7 | "refresh_interval": 1800,
8 | "metadata": {
9 | "icon": "https://kielux.de/static/images/kielux_tux_square.png",
10 | "links": [
11 | {
12 | "url": "https://kielux.de",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://kielux.de/programm/LPD20",
17 | "title": "Schedule"
18 | },
19 | {
20 | "url": "https://kielux.de/archiv",
21 | "title": "News"
22 | }
23 | ]
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/menu/ietf121.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024101001,
3 | "url": "https://datatracker.ietf.org/meeting/121/agenda.ics",
4 | "title": "IETF 121 Dublin",
5 | "start": "2024-11-02",
6 | "end": "2024-11-08",
7 | "timezone": "Europe/Dublin",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "links": [
11 | {
12 | "url": "https://www.ietf.org/meeting/121/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://datatracker.ietf.org/meeting/121/floor-plan",
17 | "title": "Floor plans"
18 | },
19 | {
20 | "url": "https://wiki.ietf.org/en/meeting/121/sidemeetings",
21 | "title": "Side meetings"
22 | }
23 | ]
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/menu/bitcoin_amsterdam_2022:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022100801,
3 | "url": "https://dev.btcwiki.nl/btcams2022/processed/latest_penta_v0.xml",
4 | "title": "Bitcoin Amsterdam 2022",
5 | "start": "2022-10-12",
6 | "end": "2022-10-14",
7 | "timezone": "Europe/Brussels",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "links": [
11 | {
12 | "url": "https://b.tc/conference/amsterdam/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://dev.btcwiki.nl/btcams2022/processed/map.png",
17 | "title": "Map",
18 | "type": "image/png"
19 | }
20 | ],
21 | "icon": "https://dev.btcwiki.nl/btcams2022/processed/btcams.png"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/menu/mch2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022061900,
3 | "url": "https://program.mch2022.org/mch2021-2020/schedule/export/schedule.xml",
4 | "title": "MCH2022",
5 | "start": "2022-07-22",
6 | "end": "2022-07-26",
7 | "timezone": "Europe/Amsterdam",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://map.mch2022.org/",
12 | "title": "Map"
13 | },
14 | {
15 | "url": "https://mch2022.org/",
16 | "title": "Website"
17 | },
18 | {
19 | "url": "https://wiki.mch2022.org/Main_Page",
20 | "title": "Wiki"
21 | },
22 | {
23 | "url": "https://tickets.mch2022.org/",
24 | "title": "Tickets"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/wikimania_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019081001,
3 | "url": "http://edwardbetts.com/wikimania_2019/schedule.xml",
4 | "title": "Wikimania 2019",
5 | "start": "2019-08-16",
6 | "end": "2019-08-18",
7 | "metadata": {
8 | "links": [
9 | {
10 | "url": "https://wikimania.wikimedia.org/wiki/Wikimania",
11 | "title": "Website"
12 | },
13 | {
14 | "url": "https://upload.wikimedia.org/wikipedia/commons/c/cb/Wikimania2019_map_bigger_texts.png",
15 | "title": "Map",
16 | "type": "image/png"
17 | },
18 | {
19 | "url": "https://wikimania.wikimedia.org/wiki/2019:Travel_guide",
20 | "title": "Travel guide"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/menu/bitcoin_amsterdam_2023:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023100701,
3 | "url": "https://dev.bitcoinwiki.nl/btcams2023/processed/latest_penta_v0.xml",
4 | "title": "Bitcoin Amsterdam 2023",
5 | "start": "2023-10-12",
6 | "end": "2023-10-13",
7 | "timezone": "Europe/Brussels",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "links": [
11 | {
12 | "url": "https://b.tc/conference/amsterdam/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://dev.bitcoinwiki.nl/btcams2023/processed/map.jpg",
17 | "title": "Map",
18 | "type": "image/jpeg"
19 | }
20 | ],
21 | "icon": "https://dev.bitcoinwiki.nl/btcams2023/processed/btcams.png"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/menu/sfscon_2021.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2021092200,
3 | "url": "https://www.sfscon.it/?calendar=2021&format=xml",
4 | "title": "SFScon 2021",
5 | "start": "2021-11-12",
6 | "end": "2021-11-13",
7 | "timezone": "Europe/Rome",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.sfscon.it/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://www.sfscon.it/speakers/",
16 | "title": "Speakers"
17 | },
18 | {
19 | "url": "https://www.sfscon.it/call4volunteers/",
20 | "title": "Volunteer"
21 | }
22 | ],
23 | "icon": "https://www.sfscon.it/wp-content/uploads/2020/10/cropped-cropped-sfsconnew-180x180.png"
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/menu/bitcoin_amsterdam_2024:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024100101,
3 | "url": "https://dev.bitcoinwiki.nl/btcams2024/processed/latest_penta_v0.xml",
4 | "title": "Bitcoin Amsterdam 2024",
5 | "start": "2024-10-09",
6 | "end": "2024-10-10",
7 | "timezone": "Europe/Brussels",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "links": [
11 | {
12 | "url": "https://b.tc/conference/amsterdam/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://dev.bitcoinwiki.nl/btcams2023/processed/map.jpg?",
17 | "title": "Map",
18 | "type": "image/jpeg"
19 | }
20 | ],
21 | "icon": "https://dev.bitcoinwiki.nl/btcams2023/processed/btcams.png"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/menu/kielux_2020.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2020090600,
3 | "url": "https://kielux.de/content/calendars/KOLT20.ics",
4 | "title": "18. Kieler Open Source und Linux Tage Online",
5 | "start": "2020-09-18",
6 | "end": "2020-09-19",
7 | "refresh_interval": 1800,
8 | "metadata": {
9 | "icon": "https://kielux.de/static/images/kielux_tux_square.png",
10 | "links": [
11 | {
12 | "url": "https://kielux.de",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://kielux.de/programm/KOLT20",
17 | "title": "Schedule and workshop registration"
18 | },
19 | {
20 | "url": "https://kielux.de/archiv",
21 | "title": "News"
22 | }
23 | ]
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/menu/parisweb_workshops_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023081400,
3 | "url": "https://www.paris-web.fr/2023/ateliers-parisweb-2023.ics",
4 | "title": "Paris Web 2023 - Ateliers",
5 | "start": "2023-09-30",
6 | "end": "2023-09-30",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.paris-web.fr/2023/",
12 | "title": "Site Web"
13 | },
14 | {
15 | "url": "https://inscriptions.paris-web.fr/",
16 | "title": "Tarifs et inscription"
17 | }
18 | ],
19 | "rooms": [
20 | {
21 | "name": "IIM.*",
22 | "show_name": "IIM Digital School",
23 | "latlon": [48.89317, 2.22690]
24 | }
25 | ]
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/menu/kielux_lpd_2021.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2021091100,
3 | "url": "https://kielux.de/content/calendars/LPD21.ics",
4 | "title": "Kieler Linux Presentation Day 2021.2",
5 | "start": "2021-09-16",
6 | "end": "2021-09-16",
7 | "timezone": "Europe/Berlin",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "icon": "https://kielux.de/static/images/kielux_tux_square.png",
11 | "links": [
12 | {
13 | "url": "https://kielux.de",
14 | "title": "Website"
15 | },
16 | {
17 | "url": "https://kielux.de/programm/LPD21",
18 | "title": "Schedule"
19 | },
20 | {
21 | "url": "https://kielux.de/archiv",
22 | "title": "News"
23 | }
24 | ]
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/menu/sfscon_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023111010,
3 | "url": "https://www.sfscon.it/?calendar=2023&format=xml",
4 | "title": "SFSCON 2023",
5 | "start": "2023-11-10",
6 | "end": "2023-11-11",
7 | "timezone": "Europe/Brussels",
8 | "metadata": {
9 | "icon": "https://www.sfscon.it/wp-content/uploads/2020/10/cropped-cropped-sfsconnew-180x180.png",
10 | "links": [
11 | {
12 | "url": "https://www.sfscon.it/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://cloud.opendatahub.com/index.php/s/a7Gx22y45fHwJRS/download/2023%20SFSCON%20attendee%20guide.pdf",
17 | "title": "Attendee Guide",
18 | "type": "application/pdf"
19 | }
20 | ]
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/ggt/app.yaml:
--------------------------------------------------------------------------------
1 | runtime: python311
2 |
3 | inbound_services:
4 | - warmup
5 |
6 | handlers:
7 | - url: /
8 | secure: always
9 | redirect_http_response_code: 301
10 | static_files: index.html
11 | upload: index.html
12 |
13 | - url: /_ah/warmup
14 | secure: optional
15 | script: auto
16 |
17 | - url: /nodatapolicy.*
18 | secure: always
19 | redirect_http_response_code: 301
20 | static_files: nodatapolicy.html
21 | upload: nodatapolicy.html
22 |
23 | - url: /.well-known/assetlinks.json
24 | secure: optional
25 | static_files: assetlinks.json
26 | upload: assetlinks.json
27 |
28 | - url: /.*
29 | secure: always
30 | redirect_http_response_code: 301
31 | script: auto
32 |
--------------------------------------------------------------------------------
/menu/froscon_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022080800,
3 | "url": "https://programm.froscon.org/2022/schedule.xml",
4 | "title": "FrOSCon 2022",
5 | "start": "2022-08-20",
6 | "end": "2022-08-21",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "icon": "https://www.froscon.org/fileadmin/images/logos/frog_button.png",
10 | "links": [
11 | {
12 | "url": "https://www.froscon.org/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://media.ccc.de/b/conferences/froscon",
17 | "title": "Recordings"
18 | }
19 | ]
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/menu/libreplanet_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "start": "2022-03-19",
3 | "end": "2022-03-20",
4 | "timezone": "America/New_York",
5 | "version": 2022031701,
6 | "url": "https://libreplanet.org/2022/lp2022-schedule.ics",
7 | "title": "LibrePlanet 2022",
8 | "metadata": {
9 | "icon": "https://libreplanet.org/2022/assets/img/logo-small.png",
10 | "links": [
11 | {
12 | "url": "https://libreplanet.org/2022/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://libreplanet.org/2022/live/",
17 | "title": "Livestream"
18 | }
19 | ]
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/menu/libreplanet_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023031500,
3 | "url": "https://libreplanet.org/2023/lp2023-schedule.ics",
4 | "title": "LibrePlanet 2023",
5 | "start": "2023-03-18",
6 | "end": "2023-03-19",
7 | "timezone": "America/New_York",
8 | "metadata": {
9 | "icon": "https://libreplanet.org/2023/assets/img/logo-small.png",
10 | "links": [
11 | {
12 | "url": "https://libreplanet.org/2023/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://libreplanet.org/2023/live/",
17 | "title": "Live Stream"
18 | },
19 | {
20 | "url": "https://libreplanet.org/2023/safe-space-policy/",
21 | "title": "Safe Space Policy"
22 | }
23 | ]
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/menu/parisweb_2021.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2021091100,
3 | "url": "https://www.paris-web.fr/2021/conferences-parisweb-2021.ics",
4 | "title": "Paris Web 2021",
5 | "id": "Conf\u00E9rences Paris Web 2021",
6 | "speakermatch": " \u2014 (.*)",
7 | "start": "2021-10-07",
8 | "end": "2021-10-08",
9 | "timezone": "Europe/Paris",
10 | "metadata": {
11 | "icon": "https://mamot.fr/system/accounts/avatars/000/053/194/original/692e51a45b72717a.png",
12 | "links": [
13 | {
14 | "url": "https://www.paris-web.fr/2021/",
15 | "title": "Site Web"
16 | },
17 | {
18 | "url": "https://inscriptions.paris-web.fr/",
19 | "title": "Tarifs et inscription"
20 | }
21 | ]
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/menu/38c3_main_rooms_only.json:
--------------------------------------------------------------------------------
1 | {
2 | "title": "38C3 - main rooms only",
3 | "metadata": {
4 | "links": [
5 | {
6 | "url": "https://events.ccc.de/congress/2024/infos/startpage.html",
7 | "title": "Website"
8 | },
9 | {
10 | "url": "https://events.ccc.de/congress/2024/hub/en/wiki/start/",
11 | "title": "Wiki"
12 | },
13 | {
14 | "title": "Weblog",
15 | "url": "https://events.ccc.de/"
16 | }
17 | ]
18 | },
19 | "url": "https://fahrplan.events.ccc.de/congress/2024/fahrplan/schedule/export/schedule.xml",
20 | "start": "2024-12-27",
21 | "end": "2024-12-30",
22 | "timezone": "Europe/Berlin",
23 | "refresh_interval": 1800,
24 | "version": 2024122201
25 | }
26 |
--------------------------------------------------------------------------------
/menu/hacklu_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023090601,
3 | "url": "https://pretalx.com/hack-lu-2023/schedule/export/schedule.xml",
4 | "title": "hack.lu 2023",
5 | "start": "2023-10-16",
6 | "end": "2023-10-19",
7 | "timezone": "Europe/Luxembourg",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2023.hack.lu/",
12 | "title": "Website"
13 | }
14 | ],
15 | "rooms": [
16 | {
17 | "name": "Hollenfels",
18 | "latlon": [49.63964, 6.15409]
19 | },
20 | {
21 | "name": "Salle Europe",
22 | "latlon": [49.63964, 6.15409]
23 | },
24 | {
25 | "name": "Schengen 1 and 2",
26 | "latlon": [49.63964, 6.15409]
27 | }
28 | ]
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/menu/parisweb_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023081400,
3 | "url": "https://www.paris-web.fr/2023/conferences-parisweb-2023.ics",
4 | "title": "Paris Web 2023 - Conférences",
5 | "start": "2023-09-28",
6 | "end": "2023-09-29",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.paris-web.fr/2023/",
12 | "title": "Site Web"
13 | },
14 | {
15 | "url": "https://inscriptions.paris-web.fr/",
16 | "title": "Tarifs et inscription"
17 | }
18 | ],
19 | "rooms": [
20 | {
21 | "name": "Auditorium",
22 | "show_name": "Auditorium - Institut Pasteur",
23 | "latlon": [48.84207, 2.31022]
24 | }
25 | ]
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/menu/rc3_2021.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2021122701,
3 | "url": "https://static.rc3.world/schedule/everything.xml",
4 | "title": "rC3: NOWHERE - 2021",
5 | "start": "2021-12-27",
6 | "end": "2021-12-30",
7 | "timezone": "Europe/Berlin",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "links": [
11 | {
12 | "title": "Links",
13 | "url": "https://links.rc3.world/"
14 | },
15 | {
16 | "title": "Live-streams",
17 | "url": "https://streaming.media.ccc.de/rc3/"
18 | },
19 | {
20 | "title": "rC3 World",
21 | "url": "https://rc3.world/2021/"
22 | },
23 | {
24 | "title": "Weblog",
25 | "url": "https://events.ccc.de/"
26 | }
27 | ]
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/menu/bibtag22.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022050101,
3 | "url": "https://cloud.bib.uni-mannheim.de/s/QNzesdFeDg6tJ5j/download/bibtag22.xml",
4 | "title": "Bibliothekskongress 2022",
5 | "start": "2022-05-31",
6 | "end": "2022-06-02",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.bid-kongress-leipzig.de/",
12 | "title": "Webseite"
13 | },
14 | {
15 | "url": "https://www.bid-kongress-leipzig.de/index.php?id=24",
16 | "title": "Informationen von A-Z"
17 | },
18 | {
19 | "url": "https://www.ccl-leipzig.de/de/location/gelaendeueberblick/",
20 | "title": "Geländeübersicht Congress Center"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/menu/bornhack_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022072619,
3 | "url": "https://bornhack.dk/bornhack-2022/program/frab.xml",
4 | "title": "BornHack 2022",
5 | "start": "2022-08-03",
6 | "end": "2022-08-10",
7 | "timezone": "Europe/Copenhagen",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://bornhack.dk/bornhack-2022/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://bornhack.dk/bornhack-2022/info/",
16 | "title": "Info"
17 | },
18 | {
19 | "url": "https://bornhack.dk/news/",
20 | "title": "News"
21 | },
22 | {
23 | "url": "https://bornhack.dk/bornhack-2022/facilities/",
24 | "title": "Facilities"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/bornhack_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023051918,
3 | "url": "https://bornhack.dk/bornhack-2023/program/frab.xml",
4 | "title": "BornHack 2023",
5 | "start": "2023-08-02",
6 | "end": "2023-08-09",
7 | "timezone": "Europe/Copenhagen",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://bornhack.dk/bornhack-2023/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://bornhack.dk/bornhack-2023/info/",
16 | "title": "Info"
17 | },
18 | {
19 | "url": "https://bornhack.dk/news/",
20 | "title": "News"
21 | },
22 | {
23 | "url": "https://bornhack.dk/bornhack-2023/facilities/",
24 | "title": "Facilities"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/bornhack_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024071016,
3 | "url": "https://bornhack.dk/bornhack-2024/program/frab.xml",
4 | "title": "BornHack 2024",
5 | "start": "2024-07-17",
6 | "end": "2024-07-23",
7 | "timezone": "Europe/Copenhagen",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://bornhack.dk/bornhack-2024/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://bornhack.dk/bornhack-2024/info/",
16 | "title": "Info"
17 | },
18 | {
19 | "url": "https://bornhack.dk/news/",
20 | "title": "News"
21 | },
22 | {
23 | "url": "https://bornhack.dk/bornhack-2024/facilities/",
24 | "title": "Facilities"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/kielux_lpd_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022082701,
3 | "title": "Kielux Linux Presentation Day",
4 | "url": "https://kielux.de/content/calendars/LPD22.ics",
5 | "start": "2022-09-15",
6 | "end": "2022-09-15",
7 | "timezone": "Europe/Berlin",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "icon": "https://kielux.de/static/images/kielux_tux_square.png",
11 | "links": [
12 | {
13 | "url": "https://kielux.de",
14 | "title": "Website"
15 | },
16 | {
17 | "url": "https://kielux.de/programm/LPD22",
18 | "title": "Schedule"
19 | }
20 | ],
21 | "rooms": [
22 | {
23 | "name": "R012",
24 | "latlon": [54.33497, 10.11928]
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/kielux_lpd_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023081601,
3 | "title": "Kielux Linux Presentation Day",
4 | "url": "https://kielux.de/content/calendars/LPD23.ics",
5 | "start": "2023-09-14",
6 | "end": "2023-09-14",
7 | "timezone": "Europe/Berlin",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "icon": "https://kielux.de/static/images/kielux_tux_square.png",
11 | "links": [
12 | {
13 | "url": "https://kielux.de",
14 | "title": "Website"
15 | },
16 | {
17 | "url": "https://kielux.de/programm/LPD23",
18 | "title": "Schedule"
19 | }
20 | ],
21 | "rooms": [
22 | {
23 | "name": "R114",
24 | "latlon": [54.33510, 10.11944]
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/matrixconf_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024091599,
3 | "url": "https://cfp.matrix.org/matrixconf2024/schedule/export/schedule.xml",
4 | "title": "Matrix Conference 2024",
5 | "start": "2024-09-20",
6 | "end": "2024-09-22",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2024.matrix.org",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2024.matrix.org/attend/#getting-there",
16 | "title": "Venue and Travel"
17 | },
18 | {
19 | "url": "https://2024.matrix.org/attend/#health-and-safety",
20 | "title": "Health and Safety"
21 | }
22 | ]
23 | }
24 | }
--------------------------------------------------------------------------------
/menu/mrmcd_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024100300,
3 | "url": "https://talks.mrmcd.net/2024/schedule/export/schedule.xml",
4 | "title": "MRMCD 2024",
5 | "start": "2024-10-03",
6 | "end": "2024-10-06",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2024.mrmcd.net",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://tickets.mrmcd.net/mrmcd/2024/",
16 | "title": "Tickets"
17 | },
18 | {
19 | "url": "https://engel.mrmcd.net/login",
20 | "title": "Engelsystem / Matrosensystem"
21 | },
22 | {
23 | "url": "https://wiki.mrmcd.net/wiki/Main_Page",
24 | "title": "Wiki"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/kielux_lpd_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024081901,
3 | "title": "Kielux Linux Presentation Day 2024",
4 | "url": "https://kielux.de/content/calendars/LPD24.ics",
5 | "start": "2024-09-19",
6 | "end": "2024-09-19",
7 | "timezone": "Europe/Berlin",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "icon": "https://kielux.de/static/images/kielux_tux_square.png",
11 | "links": [
12 | {
13 | "url": "https://kielux.de",
14 | "title": "Website"
15 | },
16 | {
17 | "url": "https://kielux.de/programm/LPD24",
18 | "title": "Schedule"
19 | }
20 | ],
21 | "rooms": [
22 | {
23 | "name": "R114",
24 | "latlon": [54.33510, 10.11944]
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/pgdayparis_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022022800,
3 | "url": "https://www.postgresql.eu/events/pgdayparis2022/schedule.xml",
4 | "title": "pgDay Paris 2022",
5 | "start": "2022-03-24",
6 | "end": "2022-03-24",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2022.pgday.paris/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2022.pgday.paris/registration/",
16 | "title": "Registration"
17 | },
18 | {
19 | "url": "https://2022.pgday.paris/venue/",
20 | "title": "Venue"
21 | }
22 | ],
23 | "icon": "https://files.mastodon.social/accounts/avatars/000/194/494/original/9f75283c634daf2b.png"
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/menu/pgdayparis_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023022200,
3 | "url": "https://www.postgresql.eu/events/pgdayparis2023/schedule.xml",
4 | "title": "pgDay Paris 2023",
5 | "start": "2023-03-22",
6 | "end": "2023-03-23",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2023.pgday.paris/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2023.pgday.paris/registration/",
16 | "title": "Registration"
17 | },
18 | {
19 | "url": "https://2023.pgday.paris/venue/",
20 | "title": "Venue"
21 | }
22 | ],
23 | "icon": "https://files.mastodon.social/accounts/avatars/000/194/494/original/9f75283c634daf2b.png"
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/menu/kielux_2021.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2021091100,
3 | "url": "https://kielux.de/content/calendars/KOLT21.ics",
4 | "title": "19. Kieler Open Source und Linux Tage Online",
5 | "start": "2021-09-17",
6 | "end": "2021-09-18",
7 | "timezone": "Europe/Berlin",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "icon": "https://kielux.de/static/images/kielux_tux_square.png",
11 | "links": [
12 | {
13 | "url": "https://kielux.de",
14 | "title": "Website"
15 | },
16 | {
17 | "url": "https://kielux.de/programm/KOLT21",
18 | "title": "Schedule and workshop registration"
19 | },
20 | {
21 | "url": "https://kielux.de/archiv",
22 | "title": "News"
23 | }
24 | ]
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/menu/libreoffice_libocon_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024100623,
3 | "url": "https://events.documentfoundation.org/libreoffice-conference-2024/schedule.xml",
4 | "title": "LibreOffice Conference (LibOCon) 2024",
5 | "start": "2024-10-10",
6 | "end": "2024-10-12",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "title": "Website",
12 | "url": "https://conference.libreoffice.org/2024/"
13 | },
14 | {
15 | "title": "Schedule",
16 | "url": "https://events.documentfoundation.org/libreoffice-conference-2024/schedule/"
17 | },
18 | {
19 | "title": "Location",
20 | "url": "https://conference.libreoffice.org/2024/location"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /app/build
2 | __pycache__
3 |
4 | # from https://raw.githubusercontent.com/github/gitignore/master/Android.gitignore as of 2024-07-04
5 | # Gradle files
6 | .gradle/
7 | build/
8 |
9 | # Local configuration file (sdk path, etc)
10 | local.properties
11 |
12 | # Log/OS Files
13 | *.log
14 |
15 | # Android Studio generated files and folders
16 | captures/
17 | .externalNativeBuild/
18 | .cxx/
19 | *.apk
20 | output.json
21 |
22 | # IntelliJ
23 | *.iml
24 | .idea/
25 | misc.xml
26 | deploymentTargetDropDown.xml
27 | render.experimental.xml
28 |
29 | # Keystore files
30 | *.jks
31 | *.keystore
32 |
33 | # Google Services (e.g. APIs or Firebase)
34 | google-services.json
35 |
36 | # Android Profiling
37 | *.hprof
38 |
--------------------------------------------------------------------------------
/menu/pycon_au_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024110501,
3 | "url": "https://pretalx.com/pycon-au-2024/schedule/export/schedule.xml",
4 | "title": "PyCon AU 2024",
5 | "start": "2024-11-22",
6 | "end": "2024-11-26",
7 | "timezone": "Australia/Melbourne",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2024.pycon.org.au/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2024.pycon.org.au/about/culture/",
16 | "title": "Culture"
17 | },
18 | {
19 | "url": "https://2024.pycon.org.au/attend/travel/",
20 | "title": "Getting around"
21 | },
22 | {
23 | "url": "https://2024.pycon.org.au/safety/",
24 | "title": "Safety"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/wicmp_2025.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2025021700,
3 | "url": "https://cfp.zam.haus/wicmp-2025/schedule.xml",
4 | "title": "Wintergalaktische Club-Mate Party 2025",
5 | "start": "2025-02-28",
6 | "end": "2025-03-02",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://w.icmp.camp/10/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://cfp.zam.haus/wicmp-2025/schedule/",
16 | "title": "Fahrplan"
17 | },
18 | {
19 | "url": "https://ticketing.zam.haus/bnb/wicmp10addon/",
20 | "title": "Workshops und Hackertours"
21 | },
22 | {
23 | "url": "https://poc.w.icmp.camp",
24 | "title": "POC"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/bibliocon23.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023022401,
3 | "url": "https://cloud.bib.uni-mannheim.de/s/3NdTDTKfDmz9pqy/download/bibliocon23.xml",
4 | "title": "BiblioCon 2023",
5 | "start": "2023-05-23",
6 | "end": "2023-05-26",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2023.bibliocon.de/",
12 | "title": "Webseite"
13 | },
14 | {
15 | "url": "https://2023.bibliocon.de/informationen-von-a-z/",
16 | "title": "Informationen von A-Z"
17 | },
18 | {
19 | "url": "https://2023.bibliocon.de/wp-content/uploads/2020/02/HCC.pdf",
20 | "title": "Lageplan Hannover Congress Centrum (PDF)",
21 | "type": "application/pdf"
22 | }
23 | ]
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/menu/installfest_2020.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2020021801,
3 | "url": "https://pretalx.installfest.cz/installfest-2020/schedule/export/schedule.xml",
4 | "title": "Installfest 2020",
5 | "start": "2020-02-29",
6 | "end": "2020-03-01",
7 | "metadata": {
8 | "icon": "https://installfest.cz/if19/images/logo-tux.png",
9 | "links": [
10 | {
11 | "url": "https://installfest.cz/if20/",
12 | "title": "Web Installfestu"
13 | },
14 | {
15 | "url": "https://installfest.cz/if20/info.html",
16 | "title": "Info o konferenci"
17 | }
18 | ]
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/.github/workflows/android.yml:
--------------------------------------------------------------------------------
1 | name: Android
2 |
3 | on:
4 | push:
5 | paths-ignore:
6 | - 'tools/**'
7 | - 'menu/**'
8 | pull_request:
9 | paths-ignore:
10 | - 'tools/**'
11 | - 'menu/**'
12 |
13 | jobs:
14 | build:
15 |
16 | runs-on: ubuntu-latest
17 |
18 | steps:
19 | - uses: actions/checkout@v4
20 | - name: set up JDK
21 | uses: actions/setup-java@v4
22 | with:
23 | java-version: '17'
24 | distribution: 'temurin'
25 | cache: gradle
26 |
27 | - name: Grant execute permission for gradlew
28 | run: chmod +x gradlew
29 | - name: Tests
30 | run: ./gradlew test -i
31 | - name: Build with Gradle
32 | run: ./gradlew assemble
33 |
--------------------------------------------------------------------------------
/app/src/test/resources/kielux_2020.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2020090600,
3 | "url": "https://kielux.de/content/calendars/KOLT20.ics",
4 | "title": "18. Kieler Open Source und Linux Tage Online",
5 | "start": "2020-09-18",
6 | "end": "2020-09-19",
7 | "timezone": "Europe/Berlin",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "icon": "https://kielux.de/static/images/kielux_tux_square.png",
11 | "links": [
12 | {
13 | "url": "https://kielux.de",
14 | "title": "Website"
15 | },
16 | {
17 | "url": "https://kielux.de/programm/KOLT20",
18 | "title": "Schedule and workshop registration"
19 | },
20 | {
21 | "url": "https://kielux.de/archiv",
22 | "title": "News"
23 | }
24 | ]
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/menu/capitole_du_libre_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019102400,
3 | "url": "https://participez-2019.capitoledulibre.org/schedule/xml/",
4 | "title": "Capitole du Libre 2019",
5 | "start": "2019-11-16",
6 | "end": "2019-11-17",
7 | "metadata": {
8 | "links": [
9 | {
10 | "url": "https://capitoledulibre.org/",
11 | "title": "Site web"
12 | }
13 | ],
14 | "rooms": [
15 | {
16 | "name": "A.*",
17 | "latlon": [43.60248, 1.45464]
18 | },
19 | {
20 | "name": "B.*",
21 | "latlon": [43.60247, 1.45566]
22 | },
23 | {
24 | "name": "C.*",
25 | "latlon": [43.60214, 1.45462]
26 | },
27 | {
28 | "name": "Foyer.*",
29 | "latlon": [43.60207, 1.45591]
30 | }
31 | ]
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/menu/forum_php_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022101200,
3 | "url": "https://afup.org/event/forumphp2022/planning.ics",
4 | "title": "Forum PHP 2022",
5 | "start": "2022-10-13",
6 | "end": "2022-10-14",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "icon": "https://event.afup.org/wp-content/uploads/cropped-afup-02-192x192.png",
10 | "links": [
11 | {
12 | "url": "https://event.afup.org/",
13 | "title": "Site Web"
14 | },
15 | {
16 | "url": "https://afup.org/event/forumphp2022/tickets",
17 | "title": "Tarifs et inscription"
18 | },
19 | {
20 | "url": "https://event.afup.org/forum-php-2022/infos-pratiques-forumphp2022/",
21 | "title": "Infos pratiques & FAQ"
22 | }
23 | ]
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/menu/fosdem_2021.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2021091100,
3 | "url": "https://fosdem.org/2021/schedule/xml",
4 | "title": "FOSDEM 2021",
5 | "start": "2021-02-06",
6 | "end": "2021-02-07",
7 | "timezone": "Europe/Brussels",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "links": [
11 | {
12 | "url": "https://fosdem.org/2021/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://volunteers.fosdem.org/faq/",
17 | "title": "Volunteer"
18 | },
19 | {
20 | "url": "https://fosdem.org/2021/stands/",
21 | "title": "Stands"
22 | }
23 | ],
24 | "icon": "https://archive.fosdem.org/2018/assets/style/logo-gear-7204a6874eb0128932db10ff4030910401ac06f4e907f8b4a40da24ba592b252.png"
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/menu/fosdem_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022010600,
3 | "url": "https://fosdem.org/2022/schedule/xml",
4 | "title": "FOSDEM 2022",
5 | "start": "2022-02-05",
6 | "end": "2022-02-06",
7 | "timezone": "Europe/Brussels",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "links": [
11 | {
12 | "url": "https://fosdem.org/2022/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://volunteers.fosdem.org/faq/",
17 | "title": "Volunteer"
18 | },
19 | {
20 | "url": "https://fosdem.org/2022/stands/",
21 | "title": "Stands"
22 | }
23 | ],
24 | "icon": "https://archive.fosdem.org/2018/assets/style/logo-gear-7204a6874eb0128932db10ff4030910401ac06f4e907f8b4a40da24ba592b252.png"
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/menu/capitole_du_libre_2018.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2018102400,
3 | "url": "https://participez-2018.capitoledulibre.org/schedule/xml/",
4 | "title": "Capitole du Libre 2018",
5 | "start": "2018-11-17",
6 | "end": "2018-11-18",
7 | "metadata": {
8 | "links": [
9 | {
10 | "url": "https://2018.capitoledulibre.org/",
11 | "title": "Site web"
12 | }
13 | ],
14 | "rooms": [
15 | {
16 | "name": "A.*",
17 | "latlon": [43.60248, 1.45464]
18 | },
19 | {
20 | "name": "B.*",
21 | "latlon": [43.60247, 1.45566]
22 | },
23 | {
24 | "name": "C.*",
25 | "latlon": [43.60214, 1.45462]
26 | },
27 | {
28 | "name": "Foyer.*",
29 | "latlon": [43.60207, 1.45591]
30 | }
31 | ]
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/menu/fossy_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023070501,
3 | "url": "https://edwardbetts.com/fossy_2023/schedule.xml",
4 | "title": "FOSSY 2023 (use this one!)",
5 | "start": "2023-07-13",
6 | "end": "2023-07-16",
7 | "timezone": "America/Los_Angeles",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2023.fossy.us/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2023.fossy.us/attend/health-and-safety/",
16 | "title": "Health and Safety"
17 | },
18 | {
19 | "url": "https://2023.fossy.us/travel/",
20 | "title": "Travel and Lodging"
21 | },
22 | {
23 | "url": "https://2023.fossy.us/attend/code-of-conduct/",
24 | "title": "Code of Conduct"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/app/src/test/resources/fosdem_2021.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2021011300,
3 | "url": "https://fosdem.org/2021/schedule/xml",
4 | "title": "FOSDEM 2021",
5 | "start": "2021-02-06",
6 | "end": "2021-02-07",
7 | "timezone": "Europe/Brussels",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "links": [
11 | {
12 | "url": "https://fosdem.org/2021/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://volunteers.fosdem.org/faq/",
17 | "title": "Volunteer"
18 | },
19 | {
20 | "url": "https://fosdem.org/2021/stands/",
21 | "title": "Stands"
22 | }
23 | ],
24 | "icon": "https://archive.fosdem.org/2018/assets/style/logo-gear-7204a6874eb0128932db10ff4030910401ac06f4e907f8b4a40da24ba592b252.png"
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/ggt/assetlinks.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "relation": [
4 | "delegate_permission/common.handle_all_urls"
5 | ],
6 | "target": {
7 | "namespace": "android_app",
8 | "package_name": "net.gaast.giggity",
9 | "_comment": "Dev/debug key, prod key for my Play Store uploads, then F-Droid, see https://f-droid.org/docs/Release_Channels_and_Signing_Keys/",
10 | "sha256_cert_fingerprints": [
11 | "CD:BF:4B:79:23:0E:C6:0E:47:FF:C9:5A:61:5E:82:09:5C:6D:6C:9B:FA:AD:EB:64:CE:46:42:0E:72:D3:AD:EB",
12 | "99:A5:DE:A0:63:C4:27:9F:42:09:3A:3B:97:92:94:DD:04:86:1F:7D:C8:68:77:8B:CB:36:2B:A5:EB:CF:E4:7F",
13 | "43:23:8d:51:2c:1e:5e:b2:d6:56:9f:4a:3a:fb:f5:52:34:18:b8:2e:0a:3e:d1:55:27:70:ab:b9:a9:c9:cc:ab"
14 | ]
15 | }
16 | }
17 | ]
--------------------------------------------------------------------------------
/menu/installfest_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022052301,
3 | "url": "https://pretalx.installfest.cz/installfest-2022/schedule/export/schedule.xml",
4 | "title": "Installfest 2022",
5 | "start": "2022-06-11",
6 | "end": "2022-06-12",
7 | "timezone": "Europe/Prague",
8 | "metadata": {
9 | "icon": "https://installfest.cz/if19/images/logo-tux.png",
10 | "links": [
11 | {
12 | "url": "https://installfest.cz/if22/",
13 | "title": "Web Installfestu"
14 | },
15 | {
16 | "url": "https://installfest.cz/if22/info.html",
17 | "title": "Info o konferenci"
18 | }
19 | ]
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/menu/sotm_fr_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024042700,
3 | "url": "https://pretalx.com/sotm-fr-2024/schedule.xml",
4 | "title": "State of the Map France 2024",
5 | "start": "2024-06-28",
6 | "end": "2024-06-30",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://sotm2024.openstreetmap.fr/",
12 | "title": "Site web"
13 | },
14 | {
15 | "url": "https://forum.openstreetmap.fr/",
16 | "title": "Forum"
17 | },
18 | {
19 | "url": "https://peertube.openstreetmap.fr/c/sotm_fr_2024/videos",
20 | "title": "Replays"
21 | }
22 | ]
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/menu/hip_berlin_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022121100,
3 | "url": "https://pretalx.c3voc.de/hip-berlin-2022/schedule/export/schedule.xml",
4 | "title": "///Hacking in Parallel – Berlin/// 2022",
5 | "start": "2022-12-27",
6 | "end": "2022-12-30",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://hip-berlin.de/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://pretix.hip-berlin.de/hip2022/hip2022/",
16 | "title": "Tickets"
17 | },
18 | {
19 | "url": "https://wiki.hip-berlin.de/index.php?title=Main_Page",
20 | "title": "Wiki"
21 | },
22 | {
23 | "url": "https://engelsystem.hip-berlin.de/angeltypes?action=about",
24 | "title": "Angel Center"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/bibtag20.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2020021502,
3 | "url": "https://cloud.bib.uni-mannheim.de/index.php/s/AwMc2ao8C2fX8rJ/download",
4 | "title": "Bibliothekartag 2020",
5 | "start": "2020-05-26",
6 | "end": "2020-05-29",
7 | "metadata": {
8 | "icon": "https://pbs.twimg.com/profile_images/1138817129342521344/3jcmODs__200x200.png",
9 | "links": [
10 | {
11 | "url": "https://bibliothekartag2020.de/",
12 | "title": "Webseite"
13 | },
14 | {
15 | "url": "https://bibliothekartag2020.de/der-kongress/informationen-von-a-z/",
16 | "title": "Informationen von A-Z"
17 | },
18 | {
19 | "url": "https://bibliothekartag2020.de/wp-content/uploads/2020/02/HCC.pdf",
20 | "title": "Lageplan HCC",
21 | "type": "application/pdf"
22 | }
23 | ]
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/menu/linux_conf_au_2020.json:
--------------------------------------------------------------------------------
1 | {
2 | "start": "2020-01-13",
3 | "end": "2020-01-17",
4 | "version": 2020010802,
5 | "url": "https://lca2020.linux.org.au/schedule/conference.ics",
6 | "title": "linux.conf.au 2020",
7 | "metadata": {
8 | "icon": "https://user-images.githubusercontent.com/248565/51358604-07784b80-1b18-11e9-976e-7ff0c81f0b96.png",
9 | "links": [
10 | {
11 | "url": "https://linux.conf.au/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://lca2020.linux.org.au/wiki/Main_Page",
16 | "title": "Wiki"
17 | },
18 | {
19 | "url": "https://linux.conf.au/about/location/",
20 | "title": "Location"
21 | },
22 | {
23 | "url": "https://linux.conf.au/schedule/",
24 | "title": "Online schedule"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/app/src/main/res/values-v29/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
--------------------------------------------------------------------------------
/menu/linuxday_at__2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024082922,
3 | "url": "https://www.linuxday.at/vortraege/2024/calendar.ics",
4 | "title": "LinuxDay.at Vortraege",
5 | "start": "2024-09-28",
6 | "end": "2024-09-28",
7 | "timezone": "Europe/Vienna",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.linuxday.at/",
12 | "title": "Webseite"
13 | },
14 | {
15 | "url": "https://www.linuxday.at/aussteller/2024",
16 | "title": "Aussteller"
17 | },
18 | {
19 | "url": "https://www.linuxday.at/vortraege/2024",
20 | "title": "Vorträge"
21 | },
22 | {
23 | "url": "https://www.linuxday.at/ort.html",
24 | "title": "Wie komme ich zur HTL-Dornbirn"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/glam_wiki_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023111201,
3 | "url": "https://edwardbetts.com/glam_wiki_2023/schedule.xml",
4 | "title": "GLAM Wiki 2023",
5 | "start": "2023-11-16",
6 | "end": "2023-11-18",
7 | "timezone": "America/Montevideo",
8 | "metadata": {
9 | "icon": "https://upload.wikimedia.org/wikipedia/commons/thumb/1/1a/GLAMWikiConfColorLogo01.png/480px-GLAMWikiConfColorLogo01.png",
10 | "links": [
11 | {
12 | "url": "https://meta.wikimedia.org/wiki/GLAM_Wiki_2023",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://wikimania.wikimedia.org/wiki/2023:Friendly_space_policy",
17 | "title": "Friendly space policy"
18 | }
19 | ]
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/menu/froscon_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024081000,
3 | "url": "https://programm.froscon.org/2024/schedule.xml",
4 | "title": "FrOSCon 2024",
5 | "start": "2024-08-17",
6 | "end": "2024-08-18",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "icon": "https://froscon.org/icons/apple-touch-icon.png",
10 | "links": [
11 | {
12 | "url": "https://froscon.org/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://froscon.org/en/program/project-rooms/",
17 | "title": "Project rooms"
18 | },
19 | {
20 | "url": "https://media.ccc.de/b/conferences/froscon",
21 | "title": "Recordings"
22 | }
23 | ]
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/menu/linux_conf_au_2020_bad.json:
--------------------------------------------------------------------------------
1 | {
2 | "start": "2018-01-22",
3 | "end": "2018-01-26",
4 | "version": 2020011000,
5 | "url": "https://linux.conf.au/schedule/conference.ics",
6 | "title": "LCA 2020 (old URL, avoid unless you have selections already)",
7 | "metadata": {
8 | "icon": "https://user-images.githubusercontent.com/248565/51358604-07784b80-1b18-11e9-976e-7ff0c81f0b96.png",
9 | "links": [
10 | {
11 | "url": "https://linux.conf.au/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://lca2020.linux.org.au/wiki/Main_Page",
16 | "title": "Wiki"
17 | },
18 | {
19 | "url": "https://linux.conf.au/about/location/",
20 | "title": "Location"
21 | },
22 | {
23 | "url": "https://linux.conf.au/schedule/",
24 | "title": "Online schedule"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/froscon_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023071400,
3 | "url": "https://programm.froscon.org/2023/schedule.xml",
4 | "title": "FrOSCon 2023",
5 | "start": "2023-08-05",
6 | "end": "2023-08-06",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "icon": "https://froscon.org/icons/apple-touch-icon.png",
10 | "links": [
11 | {
12 | "url": "https://froscon.org/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://froscon.org/en/program/project-rooms/",
17 | "title": "Developer rooms"
18 | },
19 | {
20 | "url": "https://media.ccc.de/b/conferences/froscon",
21 | "title": "Recordings"
22 | }
23 | ]
24 | }
25 | }
26 |
27 |
--------------------------------------------------------------------------------
/app/src/test/resources/linux_conf_au_2020.json:
--------------------------------------------------------------------------------
1 | {
2 | "start": "2020-01-13",
3 | "end": "2020-01-17",
4 | "timezone": "Australia/Brisbane",
5 | "version": 2020010802,
6 | "url": "https://lca2020.linux.org.au/schedule/conference.ics",
7 | "title": "linux.conf.au 2020",
8 | "metadata": {
9 | "icon": "https://user-images.githubusercontent.com/248565/51358604-07784b80-1b18-11e9-976e-7ff0c81f0b96.png",
10 | "links": [
11 | {
12 | "url": "https://linux.conf.au/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://lca2020.linux.org.au/wiki/Main_Page",
17 | "title": "Wiki"
18 | },
19 | {
20 | "url": "https://linux.conf.au/about/location/",
21 | "title": "Location"
22 | },
23 | {
24 | "url": "https://linux.conf.au/schedule/",
25 | "title": "Online schedule"
26 | }
27 | ]
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/menu/linuxday_at__2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022091818,
3 | "url": "https://www.linuxday.at/vortraege/2022/calendar.ics",
4 | "title": "LinuxDay.at Vortraege",
5 | "id": "LinuxDay.at Vortraege",
6 | "start": "2022-09-24",
7 | "end": "2022-09-24",
8 | "timezone": "Europe/Berlin",
9 | "metadata": {
10 | "links": [
11 | {
12 | "url": "https://www.linuxday.at/",
13 | "title": "Webseite"
14 | },
15 | {
16 | "url": "https://www.linuxday.at/aussteller/2022",
17 | "title": "Aussteller"
18 | },
19 | {
20 | "url": "https://www.linuxday.at/vortraege/2022",
21 | "title": "Vorträge"
22 | },
23 | {
24 | "url": "https://www.linuxday.at/ort.html",
25 | "title": "Wie komme ich zur HTL-Dornbirn"
26 | }
27 | ]
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/menu/linuxday_at__2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023090423,
3 | "url": "https://www.linuxday.at/vortraege/2023/calendar.ics",
4 | "title": "LinuxDay.at Vortraege",
5 | "id": "LinuxDay.at Vortraege",
6 | "start": "2023-09-30",
7 | "end": "2023-09-30",
8 | "timezone": "Europe/Vienna",
9 | "metadata": {
10 | "links": [
11 | {
12 | "url": "https://www.linuxday.at/",
13 | "title": "Webseite"
14 | },
15 | {
16 | "url": "https://www.linuxday.at/aussteller/2023",
17 | "title": "Aussteller"
18 | },
19 | {
20 | "url": "https://www.linuxday.at/vortraege/2023",
21 | "title": "Vorträge"
22 | },
23 | {
24 | "url": "https://www.linuxday.at/ort.html",
25 | "title": "Wie komme ich zur HTL-Dornbirn"
26 | }
27 | ]
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/menu/eurobsdcon_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023091301,
3 | "url": "https://cloud.fabrico.fr/remote.php/dav/public-calendars/6f4PgiJAtX39xD53/?export",
4 | "title": "EuroBSDCon 2023",
5 | "start": "2023-09-14",
6 | "end": "2023-09-17",
7 | "timezone": "Europe/Lisbon",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2023.eurobsdcon.org/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2023.eurobsdcon.org/venue/",
16 | "title": "Venue"
17 | },
18 | {
19 | "url": "https://2023.eurobsdcon.org/registration-and-pricing/",
20 | "title": "Registration"
21 | }
22 | ],
23 | "rooms": [
24 | {
25 | "name": "Auditorio",
26 | "latlon": [40.20738, -8.42401]
27 | },
28 | {
29 | "name": "Quimica.*",
30 | "latlon": [40.20738, -8.42359]
31 | }
32 | ]
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/menu/oat24.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024090701,
3 | "url": "https://cloud.bib.uni-mannheim.de/s/FHRYTcQpBizLAHx/download/oat24.xml",
4 | "title": "Open-Access-Tage 2024",
5 | "start": "2024-09-10",
6 | "end": "2024-09-12",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://open-access-tage.de/open-access-tage-2024-koeln",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://open-access-tage.de/fileadmin/oat/oat24/Lageplan_OAT_Koeln.pdf",
16 | "title": "Lageplan",
17 | "type": "application/pdf"
18 | },
19 | {
20 | "url": "https://open-access-tage.de/open-access-tage-2024-koeln/koeln/faq",
21 | "title": "FAQ"
22 | },
23 | {
24 | "url": "https://zenodo.org/communities/oat24/records",
25 | "title": "Poster + Folien"
26 | }
27 | ]
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/menu/wikimania_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024080700,
3 | "url": "https://wikimania.eventyay.com/2024/schedule/export/schedule.xml",
4 | "title": "Wikimania 2024",
5 | "start": "2024-08-07",
6 | "end": "2024-08-10",
7 | "timezone": "Europe/Warsaw",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://wikimania.wikimedia.org/wiki/2024:Wikimania",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://wikimania.wikimedia.org/wiki/Special:MyLanguage/2024:Venue",
16 | "title": "Venue"
17 | },
18 | {
19 | "url": "https://wikimania.wikimedia.org/wiki/Special:MyLanguage/2024:Meetups",
20 | "title": "Meetups"
21 | },
22 | {
23 | "url": "https://wikimania.wikimedia.org/wiki/Special:MyLanguage/2024:Trust_and_Safety",
24 | "title": "Trust and Safety"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/fsck2024.json:
--------------------------------------------------------------------------------
1 |
2 | {
3 | "version": 2024042100,
4 | "url": "https://cfp.ctbk.de/fsck-2024/schedule.xml",
5 | "title": "FSCK 2024",
6 | "start": "2024-05-03",
7 | "end": "2024-05-05",
8 | "timezone": "Europe/Berlin",
9 | "metadata": {
10 | "links": [
11 | { "url": "https://events.ctbk.de/fsck-2024/", "title": "Website" },
12 | { "url": "https://events.ctbk.de/fsck-2024/hotels", "title": "Where to stay in Backnang" },
13 | { "url": "https://engel.ctbk.de/login", "title": "Volunteer" }
14 | ],
15 | "icon": "https://events.ctbk.de/fsck-2024/_media/favicon.ico"
16 | },
17 | "rooms": [
18 | { "name": "Cube", "latlon": [47.05821, 15.4591] },
19 | { "name": "Theater 4", "latlon": [47.05904, 15.45969] },
20 | { "name": "Theater 5", "latlon": [47.05821, 15.46083] },
21 | { "name": "Hallway", "latlon": [47.05813, 15.46068] }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/menu/passthesalt_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023061100,
3 | "url": "https://cfp.pass-the-salt.org/pts2023/schedule/export/schedule.xml",
4 | "title": "Pass the SALT 2023",
5 | "start": "2023-07-03",
6 | "end": "2023-07-05",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2023.pass-the-salt.org/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2023.pass-the-salt.org/practical/",
16 | "title": "Practical & safety"
17 | },
18 | {
19 | "url": "https://2023.pass-the-salt.org/code-of-conduct/",
20 | "title": "Code of Conduct"
21 | }
22 | ],
23 | "rooms": [
24 | {
25 | "name": "Amphitheater",
26 | "latlon": [50.60776, 3.13637]
27 | },
28 | {
29 | "name": "Workshop room",
30 | "latlon": [50.60776, 3.13637]
31 | }
32 | ]
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/menu/passthesalt_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024050200,
3 | "url": "https://cfp.pass-the-salt.org/pts2024/schedule/export/schedule.xml",
4 | "title": "Pass the SALT 2024",
5 | "start": "2024-07-03",
6 | "end": "2024-07-05",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2024.pass-the-salt.org/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2024.pass-the-salt.org/practical/",
16 | "title": "Practical & safety"
17 | },
18 | {
19 | "url": "https://2024.pass-the-salt.org/code-of-conduct/",
20 | "title": "Code of Conduct"
21 | }
22 | ],
23 | "rooms": [
24 | {
25 | "name": "Amphitheater",
26 | "latlon": [50.60776, 3.13637]
27 | },
28 | {
29 | "name": "Workshop room",
30 | "latlon": [50.60776, 3.13637]
31 | }
32 | ]
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/menu/sfscon_2020.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2020100905,
3 | "url": "https://www.sfscon.it/?calendar=2020&format=xml",
4 | "title": "SFScon - 2020",
5 | "start": "2020-11-13",
6 | "end": "2020-11-15",
7 | "metadata": {
8 | "icon": "https://www.sfscon.it/wp-content/uploads/2020/10/cropped-cropped-sfsconnew-180x180.png",
9 | "links": [
10 | {
11 | "url": "https://www.sfscon.it/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://www.sfscon.it/about/",
16 | "title": "About"
17 | },
18 | {
19 | "url": "https://www.sfscon.it/programs/",
20 | "title": "Past editions"
21 | },
22 | {
23 | "url": "https://www.sfscon.it/talks-workshops/",
24 | "title": "Talks & Workshops"
25 | },
26 | {
27 | "url": "https://www.sfscon.it/speakers/",
28 | "title": "Speakers"
29 | }
30 | ]
31 | }
32 | }
33 |
34 |
--------------------------------------------------------------------------------
/menu/rml_12.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2018102401,
3 | "url": "https://rml12.duniter.io/rml12.ics",
4 | "id": "RML 12",
5 | "title": "RML 12",
6 | "start": "2018-11-17",
7 | "end": "2018-11-25",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://rml12.duniter.io/",
12 | "title": "Site Web"
13 | }
14 | ],
15 | "rooms": [
16 | {
17 | "name": "Bibliothèque Flora Tristan.*",
18 | "latlon": [44.82132, -0.55073]
19 | },
20 | {
21 | "name": "Halle des Douves.*",
22 | "latlon": [44.83063, -0.5663]
23 | },
24 | {
25 | "name": "Athénée Municipal.*",
26 | "latlon": [44.839834, -0.577189]
27 | },
28 | {
29 | "name": "Chez 1000i100.*",
30 | "latlon": [44.81118, -0.55375]
31 | },
32 | {
33 | "name": "Salle Marengo.*",
34 | "latlon": [44.83314, -0.56883]
35 | }
36 | ]
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/menu/libreplanet_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "start": "2019-03-23",
3 | "end": "2019-03-24",
4 | "version": 2019032300,
5 | "url": "https://libreplanet.org/2019/lp2019-schedule.ics",
6 | "id": "LibrePlanet 2019",
7 | "title": "LibrePlanet 2019",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://libreplanet.org/2019/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://www.libreplanet.org/2019/live",
16 | "title": "Livestream"
17 | }
18 | ],
19 | "rooms": [
20 | {
21 | "name": "Workshop.*|.*26-.*",
22 | "latlon": [42.361, -71.09054]
23 | },
24 | {
25 | "name": ".*31-.*",
26 | "latlon": [42.36043, -71.09275]
27 | },
28 | {
29 | "name": ".*32-.*",
30 | "latlon": [42.36159, -71.09045]
31 | },
32 | {
33 | "name": ".*34-.*",
34 | "latlon": [42.36111, -71.09194]
35 | }
36 | ]
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/menu/capitole_du_libre_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023102300,
3 | "url": "https://cfp.capitoledulibre.org/cdl-2023/schedule/export/schedule.xml",
4 | "title": "Capitole du Libre 2023",
5 | "start": "2023-11-18",
6 | "end": "2023-11-19",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "icon": "https://stockage.framapiaf.org/framapiaf/accounts/avatars/000/063/765/original/c5fa7c6864ab5ba2.png",
10 | "links": [
11 | {
12 | "url": "https://capitoledulibre.org/",
13 | "title": "Site web"
14 | }
15 | ],
16 | "rooms": [
17 | {
18 | "name": "A.*",
19 | "latlon": [43.60248, 1.45464]
20 | },
21 | {
22 | "name": "B.*",
23 | "latlon": [43.60247, 1.45566]
24 | },
25 | {
26 | "name": "C.*",
27 | "latlon": [43.60214, 1.45462]
28 | },
29 | {
30 | "name": "Foyer.*",
31 | "latlon": [43.60207, 1.45591]
32 | }
33 | ]
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/menu/capitole_du_libre_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022102500,
3 | "url": "https://cfp.capitoledulibre.org/cdl-2022/schedule/export/schedule.xml",
4 | "title": "Capitole du Libre 2022",
5 | "start": "2022-11-19",
6 | "end": "2022-11-20",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "icon": "https://framapiaf.s3.framasoft.org/framapiaf/accounts/avatars/000/063/765/original/c5fa7c6864ab5ba2.png",
10 | "links": [
11 | {
12 | "url": "https://capitoledulibre.org/",
13 | "title": "Site web"
14 | }
15 | ],
16 | "rooms": [
17 | {
18 | "name": "A.*",
19 | "latlon": [43.60248, 1.45464]
20 | },
21 | {
22 | "name": "B.*",
23 | "latlon": [43.60247, 1.45566]
24 | },
25 | {
26 | "name": "C.*",
27 | "latlon": [43.60214, 1.45462]
28 | },
29 | {
30 | "name": "Foyer.*",
31 | "latlon": [43.60207, 1.45591]
32 | }
33 | ]
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/menu/froscon_2020.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2020081800,
3 | "url": "https://programm.froscon.de/2020/schedule.xml",
4 | "title": "FrOSCon 2020",
5 | "start": "2020-08-22",
6 | "end": "2020-08-23",
7 | "metadata": {
8 | "icon": "https://www.froscon.de/fileadmin/images/logos/frog_button.png",
9 | "links": [
10 | {
11 | "url": "https://www.froscon.org/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://www.froscon.de/en/news/",
16 | "title": "News"
17 | },
18 | {
19 | "url": "http://streaming.media.ccc.de/",
20 | "title": "Streams"
21 | },
22 | {
23 | "url": "http://froscon.tv/",
24 | "title": "Recordings"
25 | }
26 | ]
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/menu/diwokiki_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "title": "Digitale Woche Kiel im KITZ und Linux Presentation Day Kiel 2019",
3 | "url": "https://kielux.de/content/calendars/extra_2019.ics",
4 | "id": "Digitale Woche Kiel im Kitz und Linux Presentation Day",
5 | "start": "2019-09-07",
6 | "end": "2019-09-19",
7 | "version": 2019081100,
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://kielux.de",
12 | "title": "Website"
13 | },
14 | {
15 | "title": "Programm",
16 | "url": "https://kielux.de/extra"
17 | },
18 | {
19 | "title": "Anfahrt",
20 | "url": "https://kielux.de/anfahrt"
21 | }
22 | ],
23 | "rooms": [
24 | {
25 | "name": "R012",
26 | "latlon": [54.33497, 10.11928]
27 | },
28 | {
29 | "name": "R007",
30 | "latlon": [54.33547, 10.11951]
31 | },
32 | {
33 | "name": "R114",
34 | "latlon": [54.33510, 10.11944]
35 | }
36 | ]
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/menu/pycon_uk_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023081801,
3 | "url": "https://pretalx.com/pyconuk-2023/schedule/export/schedule.xml",
4 | "title": "PyCon UK 2023",
5 | "start": "2023-09-22",
6 | "end": "2023-09-25",
7 | "timezone": "Europe/London",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2023.pyconuk.org/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2023.pyconuk.org/code-of-conduct/",
16 | "title": "Code of Conduct"
17 | },
18 | {
19 | "url": "https://2023.pyconuk.org/inclusion/",
20 | "title": "Inclusion, diversity and accessibility"
21 | },
22 | {
23 | "url": "https://2023.pyconuk.org/sprints/",
24 | "title": "Sprints"
25 | },
26 | {
27 | "url": "https://2023.pyconuk.org/venue/",
28 | "title": "Venue"
29 | },
30 | {
31 | "url": "https://2023.pyconuk.org/faq/",
32 | "title": "FAQ"
33 | }
34 | ]
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/menu/linuxday_at_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019100301,
3 | "url": "https://www.linuxday.at/vortraege/2019/calendar.ics",
4 | "title": "LinuxDay.at Vortraege",
5 | "id": "LinuxDay.at Vortraege",
6 | "start": "2019-10-19",
7 | "end": "2019-10-19",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.linuxday.at/",
12 | "title": "Webseite"
13 | },
14 | {
15 | "url": "https://www.linuxday.at/standplan-2019",
16 | "title": "Standplan"
17 | },
18 | {
19 | "url": "https://www.linuxday.at/aussteller/2019",
20 | "title": "Aussteller"
21 | },
22 | {
23 | "url": "https://www.linuxday.at/vortraege/2019",
24 | "title": "Vorträge"
25 | },
26 | {
27 | "url": "https://www.linuxday.at/ort.html",
28 | "title": "Wie komme ich zur HTL-Dornbirn"
29 | }
30 | ]
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/menu/oscal_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023082901,
3 | "url": "https://cfp.openlabs.cc/oscal2023/schedule/export/schedule.xml",
4 | "title": "OSCAL 2023 (Open Source Conference Albania)",
5 | "start": "2023-09-02",
6 | "end": "2023-09-03",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://oscal.openlabs.cc/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://oscal.openlabs.cc/coc/",
16 | "title": "Code of conduct"
17 | },
18 | {
19 | "url": "https://oscal.openlabs.cc/about/",
20 | "title": "About"
21 | },
22 | {
23 | "url": "https://oscal.openlabs.cc/venue/",
24 | "title": "Venue"
25 | },
26 | {
27 | "url": "https://oscal.openlabs.cc/about-tirana/",
28 | "title": "Attending"
29 | },
30 | {
31 | "url": "https://oscal.openlabs.cc/volunteers/",
32 | "title": "Volunteers"
33 | }
34 | ]
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/app/proguard-nomini.txt:
--------------------------------------------------------------------------------
1 | # Actually don't want this obfuscation horseshit, I just want to trim
2 | # off most of the Android support library.
3 | -dontobfuscate
4 | # Also, I can't find a way to allow optimisation without corrupting line numbers.
5 | # mapping.txt isn't a solution since it'll only work with my builds downloaded from Play Store,
6 | # stacktraces from F-Droid users will remain useless.
7 | -dontoptimize
8 | # Thankfully shrinking is the more effective part.
9 | # No minify: >800K (as of 2023-09-10)
10 | # Add shrinking: ~400K
11 | # Add optimisation: ~300K
12 |
13 | # None of this actually worked, probably because it doesn't control OPTIMISATION, only shrinking?
14 | #-keepattributes *Annotation*,SourceFile,LineNumberTable
15 | #-keep class net.gaast.giggity.*
16 | #-keep class net.gaast.giggity.**
17 |
18 | # Accidentally had Play Services linked in when I ended up adding this.
19 | #-dontwarn com.google.android.gms.common.**
20 | #-dontwarn com.google.android.gms.internal.**
21 |
--------------------------------------------------------------------------------
/menu/debconf24.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024071701,
3 | "url": "https://debconf24.debconf.org/schedule/pentabarf.xml",
4 | "title": "DebConf 24",
5 | "start": "2024-07-28",
6 | "end": "2024-08-04",
7 | "timezone": "Asia/Seoul",
8 | "metadata": {
9 | "icon": "https://debconf24.debconf.org/static/img/favicon/favicon-128.png",
10 | "links": [
11 | {
12 | "url": "https://debconf24.debconf.org/",
13 | "title": "Website"
14 | },
15 | {
16 | "title": "Wiki",
17 | "url": "https://wiki.debian.org/DebConf/24"
18 | },
19 | {
20 | "url": "https://debconf24.debconf.org/about/coc/",
21 | "title": "Code of Conduct"
22 | },
23 | {
24 | "url": "https://debconf24.debconf.org/about/debcamp/",
25 | "title": "DebCamp"
26 | }
27 | ]
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/menu/oat23.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023090801,
3 | "url": "https://cloud.bib.uni-mannheim.de/s/6RRW53Xqa5LND3i/download/oat23.xml",
4 | "title": "Open-Access-Tage 2023",
5 | "start": "2023-09-27",
6 | "end": "2023-09-29",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "icon": "https://cloud.bib.uni-mannheim.de/s/R7Kge2WAcGt7G7N/download/oat23-transparent-bg4.png",
10 | "links": [
11 | {
12 | "url": "https://open-access-tage.de/open-access-tage-2023-berlin",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://open-access-tage.de/fileadmin/_processed_/4/d/xcsm_171206_Gesamtplan_farb_Abstimmung2_1a6eaac0f5.png.pagespeed.ic.1GtU0KXV5q.png",
17 | "title": "Map",
18 | "type": "image/png"
19 | },
20 | {
21 | "url": "https://open-access-tage.de/open-access-tage-2023-berlin/faq",
22 | "title": "FAQ"
23 | },
24 | {
25 | "url": "https://zenodo.org/communities/oat23/",
26 | "title": "Poster + Folien"
27 | }
28 | ]
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/menu/capitole_du_libre_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024110300,
3 | "url": "https://cfp.capitoledulibre.org/cdl-2024/schedule/export/schedule.xml",
4 | "title": "Capitole du Libre 2024",
5 | "start": "2024-11-16",
6 | "end": "2024-11-17",
7 | "timezone": "Europe/Paris",
8 | "metadata": {
9 | "icon": "https://stockage.framapiaf.org/framapiaf/accounts/avatars/000/063/765/original/c5fa7c6864ab5ba2.png",
10 | "links": [
11 | {
12 | "url": "https://capitoledulibre.org/",
13 | "title": "Site web"
14 | },
15 | {
16 | "url": "https://tickets.capitoledulibre.org/cdl/2024/",
17 | "title": "Inscription gratuite obligatoire"
18 | }
19 | ],
20 | "rooms": [
21 | {
22 | "name": "A.*",
23 | "latlon": [43.60248, 1.45464]
24 | },
25 | {
26 | "name": "B.*",
27 | "latlon": [43.60247, 1.45566]
28 | },
29 | {
30 | "name": "C.*",
31 | "latlon": [43.60214, 1.45462]
32 | },
33 | {
34 | "name": "Foyer.*",
35 | "latlon": [43.60207, 1.45591]
36 | }
37 | ]
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/menu/kolt_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "title": "17. Kieler Open Source und Linux Tage",
3 | "url": "https://kielux.de/content/calendars/kolt_2019.ics",
4 | "id": "17. Kieler Open Source und Linux Tage",
5 | "start": "2019-09-20",
6 | "end": "2019-09-21",
7 | "version": 2019081100,
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://kielux.de",
12 | "title": "Website"
13 | },
14 | {
15 | "title": "Aktionen",
16 | "url": "https://kielux.de/aktionen"
17 | },
18 | {
19 | "title": "Aussteller",
20 | "url": "https://kielux.de/aussteller"
21 | },
22 | {
23 | "title": "Anfahrt",
24 | "url": "https://kielux.de/anfahrt"
25 | }
26 | ],
27 | "rooms": [
28 | {
29 | "name": "R012",
30 | "latlon": [54.33497, 10.11928]
31 | },
32 | {
33 | "name": "R007",
34 | "latlon": [54.33547, 10.11951]
35 | },
36 | {
37 | "name": "R114",
38 | "latlon": [54.33510, 10.11944]
39 | },
40 | {
41 | "name": "draußen",
42 | "latlon": [54.33510, 10.11944]
43 | }
44 | ]
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/menu/promconeu-2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019102901,
3 | "url": "https://promcon.io/2019-munich/schedule.xml",
4 | "title": "PromCon EU 2019",
5 | "start": "2019-11-07",
6 | "end": "2018-11-08",
7 | "metadata": {
8 | "icon": "https://promcon.io/assets/favicons/apple-touch-icon.png",
9 | "links": [
10 | {
11 | "url": "https://promcon.io/2019-munich/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "geo:0,0?q=48.142806,11.541000(Google)",
16 | "title": "Venue location"
17 | },
18 | {
19 | "url": "https://promcon.io/coc/",
20 | "title": "Code of Conduct"
21 | }
22 | ],
23 | "rooms": [
24 | {
25 | "name": "Main room",
26 | "latlon": [48.142806, 11.541000]
27 | }
28 | ]
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/menu/kielux_2022.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022082701,
3 | "title": "20. Kieler Open Source und Linux Tage",
4 | "url": "https://kielux.de/content/calendars/KOLT22.ics",
5 | "start": "2022-09-16",
6 | "end": "2022-09-17",
7 | "timezone": "Europe/Berlin",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "icon": "https://kielux.de/static/images/kielux_tux_square.png",
11 | "links": [
12 | {
13 | "url": "https://kielux.de",
14 | "title": "Website"
15 | },
16 | {
17 | "url": "https://kielux.de/programm/KOLT22",
18 | "title": "Schedule and workshop registration"
19 | },
20 | {
21 | "title": "Entertainment",
22 | "url": "https://kielux.de/aktionen"
23 | },
24 | {
25 | "title": "Exhibition",
26 | "url": "https://kielux.de/aussteller"
27 | }
28 | ],
29 | "rooms": [
30 | {
31 | "name": "R012",
32 | "latlon": [54.33497, 10.11928]
33 | },
34 | {
35 | "name": "R007",
36 | "latlon": [54.33547, 10.11951]
37 | },
38 | {
39 | "name": "R114",
40 | "latlon": [54.33510, 10.11944]
41 | }
42 | ]
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/menu/kielux_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023081601,
3 | "title": "21. Kieler Open Source und Linux Tage",
4 | "url": "https://kielux.de/content/calendars/KOLT23.ics",
5 | "start": "2023-09-15",
6 | "end": "2023-09-16",
7 | "timezone": "Europe/Berlin",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "icon": "https://kielux.de/static/images/kielux_tux_square.png",
11 | "links": [
12 | {
13 | "url": "https://kielux.de",
14 | "title": "Website"
15 | },
16 | {
17 | "url": "https://kielux.de/programm/KOLT23",
18 | "title": "Schedule and workshop registration"
19 | },
20 | {
21 | "title": "Entertainment",
22 | "url": "https://kielux.de/aktionen"
23 | },
24 | {
25 | "title": "Exhibition",
26 | "url": "https://kielux.de/aussteller"
27 | }
28 | ],
29 | "rooms": [
30 | {
31 | "name": "R012",
32 | "latlon": [54.33497, 10.11928]
33 | },
34 | {
35 | "name": "R007",
36 | "latlon": [54.33547, 10.11951]
37 | },
38 | {
39 | "name": "R114",
40 | "latlon": [54.33510, 10.11944]
41 | }
42 | ]
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/menu/kielux_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024081901,
3 | "title": "22. Kieler Open Source und Linux Tage",
4 | "url": "https://kielux.de/content/calendars/KOLT24.ics",
5 | "start": "2024-09-20",
6 | "end": "2024-09-21",
7 | "timezone": "Europe/Berlin",
8 | "refresh_interval": 1800,
9 | "metadata": {
10 | "icon": "https://kielux.de/static/images/kielux_tux_square.png",
11 | "links": [
12 | {
13 | "url": "https://kielux.de",
14 | "title": "Website"
15 | },
16 | {
17 | "url": "https://kielux.de/programm/KOLT24",
18 | "title": "Schedule and workshop registration"
19 | },
20 | {
21 | "title": "Entertainment",
22 | "url": "https://kielux.de/aktionen"
23 | },
24 | {
25 | "title": "Exhibition",
26 | "url": "https://kielux.de/aussteller"
27 | }
28 | ],
29 | "rooms": [
30 | {
31 | "name": "R012",
32 | "latlon": [54.33497, 10.11928]
33 | },
34 | {
35 | "name": "R007",
36 | "latlon": [54.33547, 10.11951]
37 | },
38 | {
39 | "name": "R114",
40 | "latlon": [54.33510, 10.11944]
41 | }
42 | ]
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/menu/linux_conf_au_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "start": "2019-01-21",
3 | "end": "2019-01-25",
4 | "version": 2019011800,
5 | "url": "https://2019.linux.conf.au/schedule/conference.ics",
6 | "title": "linux.conf.au 2019",
7 | "metadata": {
8 | "icon": "https://user-images.githubusercontent.com/248565/51358604-07784b80-1b18-11e9-976e-7ff0c81f0b96.png",
9 | "links": [
10 | {
11 | "url": "https://2019.linux.conf.au/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2019.linux.conf.au/schedule/",
16 | "title": "Online schedule"
17 | },
18 | {
19 | "url": "https://2019.linux.conf.au/wiki/Main_Page",
20 | "title": "Wiki"
21 | }
22 | ],
23 | "rooms": [
24 | {
25 | "name": "C1",
26 | "latlon": [-43.52307088323096, 172.58377421683943]
27 | },
28 | {
29 | "name": "C2",
30 | "latlon": [-43.523066173454346, 172.5836225959817]
31 | },
32 | {
33 | "name": "C3",
34 | "latlon": [-43.5232231993839, 172.58392661196348]
35 | },
36 | {
37 | "name": "A\\d",
38 | "latlon": [-43.524166195271505, 172.583842929392]
39 | }
40 | ]
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/menu/pycon_au_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023080901,
3 | "url": "https://pretalx.com/pyconau-2023/schedule/export/schedule.xml",
4 | "title": "PyCon AU 2023",
5 | "start": "2023-08-18",
6 | "end": "2023-08-20",
7 | "timezone": "Australia/Adelaide",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2023.pycon.org.au/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2023.pycon.org.au/about/",
16 | "title": "About"
17 | },
18 | {
19 | "url": "https://2023.pycon.org.au/about/culture/",
20 | "title": "Culture"
21 | },
22 | {
23 | "url": "https://2023.pycon.org.au/attend/getting-around/",
24 | "title": "Getting around"
25 | },
26 | {
27 | "url": "https://2023.pycon.org.au/attend/food/",
28 | "title": "Food"
29 | },
30 | {
31 | "url": "https://2023.pycon.org.au/attend/bof/",
32 | "title": "Birds of a Feather"
33 | },
34 | {
35 | "url": "https://2023.pycon.org.au/attend/volunteer/",
36 | "title": "Volunteer"
37 | },
38 | {
39 | "url": "https://2023.pycon.org.au/safety/",
40 | "title": "Safety"
41 | }
42 | ]
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/menu/pgconfnyc2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023093000,
3 | "url": "https://postgresql.us/events/pgconfnyc2023/schedule.xml",
4 | "title": "PGConf NYC 2023",
5 | "start": "2023-10-03",
6 | "end": "2023-10-05",
7 | "timezone": "America/New_York",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://2023.pgconf.nyc/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://2023.pgconf.nyc/venue/",
16 | "title": "Venue"
17 | },
18 | {
19 | "url": "https://2023.pgconf.nyc/tickets/",
20 | "title": "Tickets"
21 | },
22 | {
23 | "url": "https://2023.pgconf.nyc/about/",
24 | "title": "About"
25 | },
26 | {
27 | "url": "https://2023.pgconf.nyc/inclusion/",
28 | "title": "Inclusion"
29 | },
30 | {
31 | "url": "https://2023.pgconf.nyc/policies/",
32 | "title": "Policies"
33 | }
34 | ]
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/menu/glt22.json:
--------------------------------------------------------------------------------
1 |
2 | {
3 | "version": 2022041300,
4 | "url": "https://pretalx.linuxtage.at/glt22/schedule.xml",
5 | "title": "Grazer Linuxtage 2022",
6 | "start": "2022-04-22",
7 | "end": "2022-04-23",
8 | "timezone": "Europe/Vienna",
9 | "metadata": {
10 | "links": [
11 | { "url": "https://www.linuxtage.at/en/", "title": "Website" },
12 | { "url": "https://www.linuxtage.at/en/stay/", "title": "Where to stay in Graz" },
13 | { "url": "https://www.linuxtage.at/en/participate/", "title": "Volunteer" }
14 | ],
15 | "icon": "https://www.linuxtage.at/img/logo/tux_kopf_200.png"
16 | },
17 | "rooms": [
18 | { "name": "HS i1", "latlon": [47.05821, 15.4591] },
19 | { "name": "HS i2", "latlon": [47.05904, 15.45969] },
20 | { "name": "HS i3", "latlon": [47.05821, 15.46083] },
21 | { "name": "HS i4", "latlon": [47.05813, 15.46068] },
22 | { "name": "HS i5", "latlon": [47.05813, 15.46068] },
23 | { "name": "HS i6", "latlon": [47.05821, 15.46083] },
24 | { "name": "HS i7", "latlon": [47.0581, 15.46081] },
25 | { "name": "HF01092", "latlon": [47.05899, 15.45968] },
26 | { "name": "SZ01070", "latlon": [47.05864, 15.4598] },
27 | { "name": "Seminarraum ISW", "latlon": [47.05791, 15.45987] }
28 | ]
29 | }
30 |
--------------------------------------------------------------------------------
/play/feature-blockschedule.diff:
--------------------------------------------------------------------------------
1 | Should maybe consider the vertical center as a new default.
2 |
3 | But need to know how truncation works then (both ends, or does it align
4 | to top then?)
5 |
6 | === modified file 'app/src/main/java/net/gaast/giggity/BlockSchedule.java'
7 | --- app/src/main/java/net/gaast/giggity/BlockSchedule.java 2016-03-13 00:18:05 +0000
8 | +++ app/src/main/java/net/gaast/giggity/BlockSchedule.java 2016-03-22 21:14:16 +0000
9 | @@ -110,7 +110,8 @@
10 | * somewhere between 8 and 14 as the user zooms. */
11 | float d = (float) Math.sqrt(HourWidth / 36 * TentHeight / 24) / getResources().getDisplayMetrics().density;
12 | fontSize = (float) Math.min(8 + 6 * Math.log(d) / Math.log(20), 14);
13 | -
14 | + fontSize = (HourHeight) * (float)0.4;
15 | +
16 | schedCont = new AbsoluteLayout(ctx);
17 |
18 | Bitmap bmp = Bitmap.createBitmap(HourWidth, TentHeight, Bitmap.Config.ARGB_8888);
19 | @@ -256,7 +257,7 @@
20 |
21 | public Element(Activity ctx) {
22 | super(ctx);
23 | - setGravity(Gravity.CENTER_HORIZONTAL);
24 | + setGravity(Gravity.CENTER_HORIZONTAL | Gravity.CENTER_VERTICAL);
25 | setHeight(TentHeight);
26 | setTextColor(0xFFFFFFFF);
27 | setPadding(0, 3, 0, 0);
28 |
29 |
--------------------------------------------------------------------------------
/menu/bsides_london_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023110601,
3 | "url": "https://pretalx.com/bsides-london-2023/schedule/export/schedule.xml",
4 | "title": "Bsides London 2023",
5 | "start": "2023-12-09",
6 | "end": "2023-12-09",
7 | "timezone": "Europe/London",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.securitybsides.org.uk/",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://www.securitybsides.org.uk/code.html",
16 | "title": "Code of conduct"
17 | },
18 | {
19 | "url": "https://www.securitybsides.org.uk/sponsors.html",
20 | "title": "Sponsors"
21 | },
22 | {
23 | "url": "https://www.securitybsides.org.uk/challenges.html",
24 | "title": "Challenges"
25 | },
26 | {
27 | "url": "https://pretalx.com/bsides-london-2023/speaker/",
28 | "title": "Speakers"
29 | },
30 | {
31 | "url": "https://www.flickr.com/photos/bsideslondon/",
32 | "title": "flickr"
33 | }
34 | ]
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/app/src/main/res/values/arrays.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | - Small
5 | - 3 lines
6 | - 2 lines
7 |
8 |
9 |
10 | - @string/block_schedule
11 | - @string/timetable
12 | - @string/tracks
13 | - @string/now_next
14 | - @string/my_events
15 | - @string/search
16 |
17 |
18 | - net.gaast.giggity:id/block_schedule
19 | - net.gaast.giggity:id/timetable
20 | - net.gaast.giggity:id/tracks
21 | - net.gaast.giggity:id/now_next
22 | - net.gaast.giggity:id/my_events
23 | - net.gaast.giggity:id/search
24 |
25 |
26 | - small
27 | - medium
28 | - large
29 |
30 |
31 | - 1
32 | - 5
33 | - 10
34 | - 15
35 |
36 |
37 |
--------------------------------------------------------------------------------
/menu/36c3_main_rooms_only.json:
--------------------------------------------------------------------------------
1 | {
2 | "title": "36c3 - main rooms only",
3 | "metadata": {
4 | "links": [
5 | {
6 | "url": "https://events.ccc.de/congress/2019/wiki/index.php/Main_Page",
7 | "title": "Wiki"
8 | },
9 | {
10 | "title": "Weblog",
11 | "url": "https://events.ccc.de/"
12 | }
13 | ],
14 | "c3nav_base": "https://36c3.c3nav.de",
15 | "rooms": [
16 | {
17 | "name": "Ada",
18 | "show_name": "Hall 1",
19 | "latlon": [51.39553, 12.39962],
20 | "c3nav_slug": "hall-a"
21 | },
22 | {
23 | "name": "Borg",
24 | "show_name": "Hall 3",
25 | "latlon": [51.39512, 12.40239],
26 | "c3nav_slug": "hall-b"
27 | },
28 | {
29 | "name": "Clarke",
30 | "show_name": "Hall 4",
31 | "latlon": [51.39811, 12.40496],
32 | "c3nav_slug": "hall-c"
33 | },
34 | {
35 | "name": "Dijkstra",
36 | "show_name": "Hall 1",
37 | "latlon": [51.39553, 12.39962],
38 | "c3nav_slug": "hall-d"
39 | },
40 | {
41 | "name": "Eliza",
42 | "show_name": "CCL Hall 2",
43 | "latlon": [51.39783, 12.40023],
44 | "c3nav_slug": "hall-e"
45 | }
46 | ]
47 | },
48 | "url": "https://fahrplan.events.ccc.de/congress/2019/Fahrplan/schedule.xml",
49 | "start": "2019-12-27",
50 | "end": "2019-12-30",
51 | "refresh_interval": 1800,
52 | "version": 2019121501
53 | }
54 |
--------------------------------------------------------------------------------
/menu/glt23.json:
--------------------------------------------------------------------------------
1 |
2 | {
3 | "version": 2023041100,
4 | "url": "https://pretalx.linuxtage.at/glt23/schedule.xml",
5 | "title": "Grazer Linuxtage 2023",
6 | "start": "2023-04-14",
7 | "end": "2023-04-15",
8 | "timezone": "Europe/Vienna",
9 | "metadata": {
10 | "links": [
11 | { "url": "https://www.linuxtage.at/", "title": "Website" },
12 | { "url": "https://www.linuxtage.at/stay/", "title": "Where to stay in Graz" },
13 | { "url": "https://www.linuxtage.at/participate/", "title": "Volunteer" }
14 | ],
15 | "icon": "https://www.linuxtage.at/img/logo/tux_kopf_200.png"
16 | },
17 | "rooms": [
18 | { "name": "HS i1", "latlon": [47.05821, 15.4591] },
19 | { "name": "HS i2", "latlon": [47.05904, 15.45969] },
20 | { "name": "HS i3", "latlon": [47.05821, 15.46083] },
21 | { "name": "HS i4", "latlon": [47.05813, 15.46068] },
22 | { "name": "HS i5", "latlon": [47.05813, 15.46068] },
23 | { "name": "HS i6", "latlon": [47.05821, 15.46083] },
24 | { "name": "HS i7", "latlon": [47.0581, 15.46081] },
25 | { "name": "HS i11", "latlon": [47.0587, 15.45914] },
26 | { "name": "HS i12", "latlon": [47.0587, 15.45914] },
27 | { "name": "HS i13", "latlon": [47.0587, 15.45914] },
28 | { "name": "HF01092", "latlon": [47.05899, 15.45968] },
29 | { "name": "SZ01070", "latlon": [47.05864, 15.4598] },
30 | { "name": "Seminarraum ISW, MFEG210", "latlon": [47.05791, 15.45987] }
31 | ]
32 | }
--------------------------------------------------------------------------------
/menu/oat22.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2022090201,
3 | "url": "https://cloud.bib.uni-mannheim.de/s/f35r5JMRZywZBoa/download/oat22.xml",
4 | "title": "Open-Access-Tage 2022",
5 | "start": "2022-09-19",
6 | "end": "2022-09-21",
7 | "timezone": "Europe/Berlin",
8 | "metadata": {
9 | "icon": "https://cloud.bib.uni-mannheim.de/s/aCFfyztnYjJMC5y/download/oat22-icon.png",
10 | "links": [
11 | {
12 | "url": "https://open-access-tage.de/open-access-tage-2022-bern",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://cloud.bib.uni-mannheim.de/s/anJxSLffPYPNDCq/download/OAT%20Plan%20Gurten.png",
17 | "title": "Map",
18 | "type": "image/png"
19 | },
20 | {
21 | "url": "https://zenodo.org/communities/oat22/",
22 | "title": "Poster + Folien"
23 | }
24 | ],
25 | "rooms": [
26 | {
27 | "name": "Kulturschür",
28 | "latlon": [46.91895, 7.43811]
29 | },
30 | {
31 | "name": "Pavillon",
32 | "latlon": [46.91961, 7.43900]
33 | },
34 | {
35 | "name": "Gurtenbahn Talstation",
36 | "latlon": [46.92777, 7.44602]
37 | },
38 | {
39 | "name": "Ussicht/Wytsicht",
40 | "latlon": [46.91985, 7.43792]
41 | },
42 | {
43 | "name": "Sibe",
44 | "latlon": [46.91985, 7.43792]
45 | },
46 | {
47 | "name": "Gewölbekeller",
48 | "latlon": [46.91985, 7.43792]
49 | },
50 | {
51 | "name": "Eis, Zwöi, Vier, Sächs",
52 | "latlon": [46.91985, 7.43792]
53 | }
54 | ]
55 | }
56 | }
57 |
--------------------------------------------------------------------------------
/menu/ubucon_europe_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019092101,
3 | "url": "https://manage.ubucon.org/eu2019/schedule/export/schedule.xml",
4 | "title": "Ubucon Europe 2019 - Sintra",
5 | "start": "2019-10-10",
6 | "end": "2019-10-13",
7 | "metadata": {
8 | "links": [
9 | {
10 | "url": "https://sintra2019.ubucon.org",
11 | "title": "Website"
12 | },
13 | {
14 | "url": "https://manage.ubucon.org/eu2019/schedule",
15 | "title": "Schedule"
16 | },
17 | {
18 | "url": "https://sintra2019.ubucon.org/infos",
19 | "title": "Venue Information"
20 | }
21 | ],
22 | "icon": "https://sintra2019.ubucon.org/ubucon-eu-2019-sintra-icon-tiny.png",
23 | "rooms": [
24 | {
25 | "name": "A1.*",
26 | "show_name": "A1 - Ubuntu Auditorium",
27 | "latlon": [
28 | 38.80322,
29 | -9.38238
30 | ]
31 | },
32 | {
33 | "name": "S1.*",
34 | "show_name": "S1 - Disco Room",
35 | "latlon": [
36 | 38.80322,
37 | -9.38238
38 | ]
39 | },
40 | {
41 | "name": "S2.*",
42 | "show_name": "S2 - Bionic Room",
43 | "latlon": [
44 | 38.80322,
45 | -9.38238
46 | ]
47 | },
48 | {
49 | "name": "S3.*",
50 | "show_name": "S3 - Xenial Room",
51 | "latlon": [
52 | 38.80322,
53 | -9.38238
54 | ]
55 | }
56 | ]
57 | }
58 | }
59 |
--------------------------------------------------------------------------------
/menu/linuxdays_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019091100,
3 | "url": "https://pretalx.linuxdays.cz/2019/schedule/export/schedule.xml",
4 | "start": "2019-10-05",
5 | "end": "2019-10-06",
6 | "title": "LinuxDays 2019",
7 | "metadata": {
8 | "icon": "https://www.linuxdays.cz/2019/obrazky/icon.png",
9 | "links": [
10 | {
11 | "title": "Website",
12 | "url": "https://www.linuxdays.cz/2019/"
13 | },
14 | {
15 | "title": "Map",
16 | "type": "image/png",
17 | "url": "https://www.linuxdays.cz/2019/obrazky/plan.png"
18 | }
19 | ],
20 | "rooms": [
21 | {
22 | "latlon": [
23 | 50.105249,
24 | 14.390095
25 | ],
26 | "name": "105"
27 | },
28 | {
29 | "latlon": [
30 | 50.105382,
31 | 14.389836
32 | ],
33 | "name": "155"
34 | },
35 | {
36 | "latlon": [
37 | 50.105138,
38 | 14.390298
39 | ],
40 | "name": "107"
41 | },
42 | {
43 | "latlon": [
44 | 50.105047,
45 | 14.390432
46 | ],
47 | "name": "111"
48 | }
49 | ]
50 | }
51 | }
52 |
--------------------------------------------------------------------------------
/menu/glt25.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2025031802,
3 | "url": "https://pretalx.linuxtage.at/glt25/schedule.xml",
4 | "title": "Grazer Linuxtage 2025",
5 | "start": "2025-04-25",
6 | "end": "2025-04-26",
7 | "timezone": "Europe/Vienna",
8 | "metadata": {
9 | "links": [
10 | { "url": "https://www.linuxtage.at/", "title": "Website" },
11 | { "url": "https://www.linuxtage.at/stay/", "title": "Where to stay in Graz" },
12 | { "url": "https://www.linuxtage.at/faq/", "title": "Frequently asked questions" },
13 | { "url": "https://www.linuxtage.at/help/", "title": "Volunteer" }
14 | ],
15 | "icon": "https://www.linuxtage.at/img/logo/tux_kopf_200.png"
16 | },
17 | "rooms": [
18 | { "name": "HS i1", "latlon": [47.05821, 15.4591] },
19 | { "name": "HS i2", "latlon": [47.05904, 15.45969] },
20 | { "name": "HS i3", "latlon": [47.05821, 15.46083] },
21 | { "name": "HS i4", "latlon": [47.05813, 15.46068] },
22 | { "name": "HS i5", "latlon": [47.05813, 15.46068] },
23 | { "name": "HS i6", "latlon": [47.05821, 15.46083] },
24 | { "name": "HS i7", "latlon": [47.0581, 15.46081] },
25 | { "name": "HS i11", "latlon": [47.0587, 15.45914] },
26 | { "name": "HS i12", "latlon": [47.0587, 15.45914] },
27 | { "name": "HS i13", "latlon": [47.0587, 15.45914] },
28 | { "name": "HF01092", "latlon": [47.05899, 15.45968] },
29 | { "name": "SZ01070", "latlon": [47.05864, 15.4598] },
30 | { "name": "Seminarraum ISW, MFEG210", "latlon": [47.05791, 15.45987] },
31 | { "name": "IEM Cube", "latlon": [47.057125, 15.460078] }
32 | ]
33 | }
--------------------------------------------------------------------------------
/menu/foss4g_europe_2024_full.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024062500,
3 | "url": "https://sotm.osmz.ru/tartu2024.xml",
4 | "title": "FOSS4G Europe 2024 (extended)",
5 | "start": "2024-07-01",
6 | "end": "2024-07-07",
7 | "timezone": "Europe/Tallinn",
8 | "refresh_interval": 7200,
9 | "metadata": {
10 | "links": [
11 | {
12 | "url": "https://2024.europe.foss4g.org/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://wiki.osgeo.org/wiki/FOSS4G-Europe-2024/BirdsOfAFeather",
17 | "title": "Birds of a Feather"
18 | },
19 | {
20 | "url": "https://wiki.osgeo.org/wiki/FOSS4G-Europe-2024/CommunitySprint",
21 | "title": "Community Sprint"
22 | },
23 | {
24 | "url": "https://2024.europe.foss4g.org/sponsors/",
25 | "title": "Sponsors"
26 | }
27 | ],
28 | "rooms": [
29 | {
30 | "name": "Raekoja plats",
31 | "latlon": [58.38009, 26.72224]
32 | },
33 | {
34 | "name": "Room .*|Destination.*|GEOCAT.*|LAStools.*|QField.*|Vanemuise 46",
35 | "show_name": "Vanemuise 46",
36 | "latlon": [58.37347, 26.71616]
37 | },
38 | {
39 | "name": "Mart Reiniku",
40 | "latlon": [58.37290, 26.71549]
41 | },
42 | {
43 | "name": "Omicum",
44 | "latlon": [58.37290, 26.71766]
45 | },
46 | {
47 | "name": "Salong",
48 | "latlon": [58.37628, 26.72151]
49 | },
50 | {
51 | "name": "Aparaaditehas",
52 | "latlon": [58.37046, 26.71617]
53 | },
54 | {
55 | "name": "Lodjakoda",
56 | "latlon": [58.39122, 26.71361]
57 | }
58 | ]
59 | }
60 | }
61 |
--------------------------------------------------------------------------------
/menu/linuxdays_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023100600,
3 | "url": "https://pretalx.linuxdays.cz/linuxdays-2023/schedule/export/schedule.xml",
4 | "start": "2023-10-07",
5 | "end": "2023-10-08",
6 | "timezone": "Europe/Prague",
7 | "title": "LinuxDays 2023",
8 | "metadata": {
9 | "icon": "https://www.linuxdays.cz/2023/obrazky/icon.png",
10 | "links": [
11 | {
12 | "title": "Website",
13 | "url": "https://www.linuxdays.cz/2023/"
14 | },
15 | {
16 | "title": "Map",
17 | "type": "image/png",
18 | "url": "https://www.linuxdays.cz/2023/obrazky/plan23.png"
19 | }
20 | ],
21 | "rooms": [
22 | {
23 | "latlon": [
24 | 50.105249,
25 | 14.390095
26 | ],
27 | "name": "105"
28 | },
29 | {
30 | "latlon": [
31 | 50.105382,
32 | 14.389836
33 | ],
34 | "name": "155"
35 | },
36 | {
37 | "latlon": [
38 | 50.105138,
39 | 14.390298
40 | ],
41 | "name": "107"
42 | },
43 | {
44 | "latlon": [
45 | 50.105047,
46 | 14.390432
47 | ],
48 | "name": "111"
49 | }
50 | ]
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/menu/linuxdays_2024.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2024101000,
3 | "url": "https://pretalx.linuxdays.cz/linuxdays-2024/schedule/export/schedule.xml",
4 | "start": "2024-10-12",
5 | "end": "2024-10-13",
6 | "timezone": "Europe/Prague",
7 | "title": "LinuxDays 2024",
8 | "metadata": {
9 | "icon": "https://www.linuxdays.cz/2024/obrazky/icon.png",
10 | "links": [
11 | {
12 | "title": "Website",
13 | "url": "https://www.linuxdays.cz/2024/"
14 | },
15 | {
16 | "title": "Map",
17 | "type": "image/png",
18 | "url": "https://www.linuxdays.cz/2024/obrazky/plan24.png"
19 | }
20 | ],
21 | "rooms": [
22 | {
23 | "latlon": [
24 | 50.105249,
25 | 14.390095
26 | ],
27 | "name": "105"
28 | },
29 | {
30 | "latlon": [
31 | 50.105382,
32 | 14.389836
33 | ],
34 | "name": "155"
35 | },
36 | {
37 | "latlon": [
38 | 50.105138,
39 | 14.390298
40 | ],
41 | "name": "107"
42 | },
43 | {
44 | "latlon": [
45 | 50.105047,
46 | 14.390432
47 | ],
48 | "name": "111"
49 | }
50 | ]
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/menu/foss4g-sotm-oceania-2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023092401,
3 | "url": "https://talks.osgeo.org/foss4g-sotm-oceania-2023/schedule/export/schedule.xml",
4 | "title": "FOSS4G SOTM Oceania 2023",
5 | "start": "2023-10-16",
6 | "end": "2023-10-20",
7 | "timezone": "Pacific/Auckland",
8 | "metadata": {
9 | "icon": "https://2023.foss4g-oceania.org/fav-icon/apple-touch-icon.png",
10 | "links": [
11 | {
12 | "url": "https://2023.foss4g-oceania.org/",
13 | "title": "Website"
14 | },
15 | {
16 | "url": "https://2023.foss4g-oceania.org/#/code-of-conduct",
17 | "title": "Code of conduct"
18 | },
19 | {
20 | "url": "https://2023.foss4g-oceania.org/#/attend/our-conference-venue",
21 | "title": "Venue"
22 | },
23 | {
24 | "url": "https://2023.foss4g-oceania.org/#/attend/Accommodation",
25 | "title": "Accommodation"
26 | },
27 | {
28 | "url": "https://2023.foss4g-oceania.org/#/program/workshops",
29 | "title": "Workshops"
30 | },
31 | {
32 | "url": "https://2023.foss4g-oceania.org/#/program/community-day",
33 | "title": "Community day"
34 | },
35 | {
36 | "url": "https://2023.foss4g-oceania.org/#/program/social-events",
37 | "title": "Social events"
38 | }
39 | ]
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/widget_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
20 |
21 |
29 |
30 |
42 |
43 |
--------------------------------------------------------------------------------
/app/src/main/java/net/gaast/giggity/MyItemsView.java:
--------------------------------------------------------------------------------
1 | package net.gaast.giggity;
2 |
3 | import android.content.Context;
4 |
5 | import java.util.ArrayList;
6 | import java.util.Date;
7 | import java.util.TreeSet;
8 |
9 | public class MyItemsView extends ScheduleListView implements ScheduleViewer {
10 | private Schedule sched;
11 | Context ctx;
12 |
13 | public MyItemsView(Context ctx_, Schedule sched_) {
14 | super(ctx_);
15 | ctx = ctx_;
16 | sched = sched_;
17 |
18 | refreshContents();
19 | }
20 |
21 | @SuppressWarnings({ "rawtypes", "unchecked" })
22 | @Override
23 | public void refreshContents() {
24 | ArrayList fullList = new ArrayList();
25 | TreeSet seen = new TreeSet();
26 | TreeSet coming = new TreeSet();
27 | Date now = new Date();
28 |
29 | for (Schedule.Line tent : sched.getTents()) {
30 | for (Schedule.Item item : tent.getItems()) {
31 | if (item.getRemind()) {
32 | if (item.compareTo(now) >= 0)
33 | seen.add(item);
34 | else
35 | coming.add(item);
36 | }
37 | }
38 | }
39 | if (coming.size() > 0) {
40 | fullList.add(getResources().getString(R.string.coming_up));
41 | fullList.addAll(coming);
42 | }
43 | if (seen.size() > 0) {
44 | fullList.add((coming.size() > 0 ? "\n" : "") + this.getResources().getString(R.string.seen_so_far));
45 | fullList.addAll(seen);
46 | }
47 | if (fullList.isEmpty())
48 | fullList.add(getResources().getString(R.string.none_marked));
49 | setShowRemind(false);
50 | setList(fullList);
51 | }
52 |
53 | @Override
54 | public boolean multiDay() {
55 | return true;
56 | }
57 | }
58 |
59 |
--------------------------------------------------------------------------------
/app/src/main/java/net/gaast/giggity/ScheduleViewer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Giggity -- Android app to view conference/festival schedules
3 | * Copyright 2008-2021 Wilmer van der Gaast
4 | *
5 | * This program is free software; you can redistribute it and/or
6 | * modify it under the terms of version 2 of the GNU General Public
7 | * License as published by the Free Software Foundation.
8 | *
9 | * This program is distributed in the hope that it will be useful,
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | * GNU General Public License for more details.
13 | *
14 | * You should have received a copy of the GNU General Public License
15 | * along with this program; if not, write to the Free Software
16 | * Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 | * Boston, MA 02110-1301, USA.
18 | */
19 |
20 | package net.gaast.giggity;
21 |
22 | public interface ScheduleViewer {
23 | /* These two maybe should've just been the same. */
24 | /* Called every minute to update clock/marking of currently happening events. */
25 | void refreshContents();
26 | /* Called after possible event state changes (ScheduleItemActivity or more tricky on tablets) */
27 | void refreshItems();
28 | /* For UI stuff where the constructor would be too early to do it (showing keyboard for example) */
29 | void onShow();
30 |
31 | /* Allow date switching. Does not apply to now&next for example. */
32 | boolean multiDay();
33 |
34 | /* Currently used by TimeTable only to blend the room tabs with the action bar. */
35 | boolean extendsActionBar();
36 |
37 | public void setPadding(int left, int top, int right, int bottom);
38 | }
39 |
--------------------------------------------------------------------------------
/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
11 |
12 |
17 |
18 |
21 |
22 |
28 |
32 |
37 |
38 |
--------------------------------------------------------------------------------
/ggt/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | ggt.gaa.st
4 |
5 |
6 | You arrived here because somehow a ggt.gaa.st URL did not get
7 | intercepted by Giggity properly. Likely you don't have Giggity installed
8 | on your phone, or it's an ancient version. Or if you're using Firefox,
9 | you may have to click on a little Android logo in your address bar now.
10 |
11 |
12 |
13 | Or, maybe you're on your PC instead of on a phone, in which case hopefully
14 | a QR code just appeared below, which you should be able to scan using your
15 | QR scan/camera app.
16 |
17 |
18 |
20 |
21 |
24 |
26 |
27 |
30 |
31 |
32 |
33 | Giggity is an Android app that lets you
34 | conveniently browse conference schedules on Android phones.
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/menu/wikidatacon_2023.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2023092901,
3 | "url": "https://pretalx.com/wikidatacon2023/schedule/export/schedule.xml",
4 | "title": "WikidataCon 2023",
5 | "start": "2023-10-28",
6 | "end": "2023-10-30",
7 | "timezone": "Asia/Taipei",
8 | "metadata": {
9 | "links": [
10 | {
11 | "url": "https://www.wikidata.org/wiki/Wikidata:WikidataCon_2023",
12 | "title": "Website"
13 | },
14 | {
15 | "url": "https://pretalx.com/wikidatacon2023/speaker/",
16 | "title": "Speakers"
17 | },
18 | {
19 | "url": "https://foundation.wikimedia.org/wiki/Policy:Universal_Code_of_Conduct",
20 | "title": "Code of conduct"
21 | },
22 | {
23 | "url": "https://www.wikidata.org/wiki/Wikidata:WikidataCon_2023/Attend_online",
24 | "title": "Attend online"
25 | },
26 | {
27 | "url": "https://www.wikidata.org/wiki/Wikidata:WikidataCon_2023/Attend_in_Taipei",
28 | "title": "Attend in Taipei"
29 | },
30 | {
31 | "url": "https://www.wikidata.org/wiki/Wikidata:Eleventh_Birthday/Events",
32 | "title": "Distributed events"
33 | },
34 | {
35 | "url": "https://www.wikidata.org/wiki/Wikidata:WikidataCon_2023/Contribute",
36 | "title": "Contribute"
37 | },
38 | {
39 | "url": "https://www.wikidata.org/wiki/Wikidata:WikidataCon_2023/Documentation",
40 | "title": "Documentation"
41 | },
42 | {
43 | "url": "https://www.wikidata.org/wiki/Wikidata_talk:WikidataCon_2023",
44 | "title": "Discussions"
45 | }
46 | ]
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/menu/oat19.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019092001,
3 | "url": "https://open-access.net/fileadmin/oat/oat19/cal/oat19.xml",
4 | "title": "Open-Access-Tage 2019",
5 | "start": "2019-09-30",
6 | "end": "2019-10-02",
7 | "metadata": {
8 | "links": [
9 | {
10 | "url": "https://open-access.net/community/open-access-tage/open-access-tage-2019/",
11 | "title": "Website"
12 | },
13 | {
14 | "url": "https://info.cafm.uni-hannover.de/building/1101",
15 | "title": "Veranstaltungsort"
16 | },
17 | {
18 | "url": "https://open-access.net/fileadmin/oat/oat19/cal/Lageplan-LUH.jpg",
19 | "title": "Räume",
20 | "type": "image/jpg"
21 | }
22 | ],
23 | "rooms": [
24 | {
25 | "name": "Lichthof",
26 | "latlon": [52.38256, 9.71784]
27 | },
28 | {
29 | "name": "B305",
30 | "latlon": [52.38244, 9.71747]
31 | },
32 | {
33 | "name": "A310",
34 | "latlon": [52.38227, 9.71813]
35 | },
36 | {
37 | "name": "A320",
38 | "latlon": [52.38231, 9.7175]
39 | },
40 | {
41 | "name": "C311",
42 | "latlon": [52.38229, 9.71815]
43 | },
44 | {
45 | "name": "E242",
46 | "latlon": [52.38285, 9.71829]
47 | },
48 | {
49 | "name": "Galerie",
50 | "latlon": [52.38234, 9.71779]
51 | },
52 | {
53 | "name": "Konferenzbüro",
54 | "latlon": [52.38237, 9.71775]
55 | },
56 | {
57 | "name": "TIB",
58 | "latlon": [52.38164, 9.72002]
59 | },
60 | {
61 | "name": "Vortragsraum der TIB",
62 | "latlon": [52.38157, 9.72]
63 | },
64 | {
65 | "name": "Landesmuseum",
66 | "latlon": [52.36532, 9.73910]
67 | },
68 | {
69 | "name": "Herrenhäuser Gärten",
70 | "latlon": [52.39117, 9.6984]
71 | },
72 | {
73 | "name": "Schlossküche Herrenhausen",
74 | "latlon": [52.39136,9.69683]
75 | }
76 | ]
77 | }
78 | }
79 |
--------------------------------------------------------------------------------
/menu/sotm_2019.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2019082102,
3 | "url": "http://sotm.osmz.ru/19.xml",
4 | "title": "State of the Map 2019",
5 | "start": "2019-09-21",
6 | "end": "2019-09-23",
7 | "metadata": {
8 | "icon": "https://2019.stateofthemap.org/img/sotm-512.png",
9 | "links": [
10 | {
11 | "url": "https://2019.stateofthemap.org/",
12 | "title": "Website"
13 | }
14 | ],
15 | "rooms": [
16 | {
17 | "name": "GHS",
18 | "latlon": [49.41874361469689, 8.673456609249115]
19 | },
20 | {
21 | "name": "HSO",
22 | "latlon": [49.418363236761046, 8.673679232597351]
23 | },
24 | {
25 | "name": "HSW",
26 | "latlon": [49.418361491901344, 8.673252761363983]
27 | },
28 | {
29 | "name": "KHS",
30 | "latlon": [49.41834229844044, 8.67346465587616]
31 | },
32 | {
33 | "name": "Mathematikon A",
34 | "latlon": [49.417431472847596, 8.675226867198944]
35 | },
36 | {
37 | "name": "Mathematikon B",
38 | "latlon": [49.41753965608237, 8.6752188205719]
39 | },
40 | {
41 | "name": "Mathematikon C",
42 | "latlon": [49.41765132884875, 8.6752188205719]
43 | }
44 | ]
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/app/src/main/res/xml/preferences.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
14 |
15 |
18 |
19 |
28 |
29 |
30 |
31 |
32 |
37 |
38 |
45 |
46 |
47 |
48 |
--------------------------------------------------------------------------------
/menu/37c3_main_rooms_only.json:
--------------------------------------------------------------------------------
1 | {
2 | "title": "37c3 - main rooms only",
3 | "metadata": {
4 | "links": [
5 | {
6 | "url": "https://events.ccc.de/congress/2023/infos/startpage.html",
7 | "title": "Website"
8 | },
9 | {
10 | "url": "https://events.ccc.de/congress/2023/hub/en/wiki/start/",
11 | "title": "Wiki"
12 | },
13 | {
14 | "title": "Weblog",
15 | "url": "https://events.ccc.de/"
16 | }
17 | ],
18 | "c3nav_base": "https://37c3.c3nav.de",
19 | "rooms": [
20 | {
21 | "name": "Kidspace.*",
22 | "show_name": "Kidspace - Workshopraum in Saal B",
23 | "c3nav_slug": "hall-b"
24 | },
25 | {
26 | "name": "Lounge",
27 | "show_name": "Lounge",
28 | "c3nav_slug": "lounge-main"
29 | },
30 | {
31 | "name": "Saal 1",
32 | "show_name": "Saal 1",
33 | "c3nav_slug": "hall-1"
34 | },
35 | {
36 | "name": "Saal D",
37 | "show_name": "Saal D",
38 | "c3nav_slug": "sos-d"
39 | },
40 | {
41 | "name": "Saal E",
42 | "show_name": "Saal E",
43 | "c3nav_slug": "sos-e"
44 | },
45 | {
46 | "name": "Saal Granville",
47 | "show_name": "Saal Granville",
48 | "c3nav_slug": "hg"
49 | },
50 | {
51 | "name": "Saal Zuse",
52 | "show_name": "Saal Zuse",
53 | "c3nav_slug": "hz"
54 | },
55 | {
56 | "name": "Sendezentrum Stage.*",
57 | "show_name": "Sendezentrum Stage (Saal F)",
58 | "c3nav_slug": "sendezentrum-dlf"
59 | },
60 | {
61 | "name": "Stage H",
62 | "show_name": "Stage H",
63 | "c3nav_slug": "sos-h"
64 | },
65 | {
66 | "name": "Stage Y",
67 | "show_name": "Stage Y",
68 | "c3nav_slug": "sos-y"
69 | },
70 | {
71 | "name": "Stonewall IO",
72 | "show_name": "Stonewall IO",
73 | "c3nav_slug": "stonewall-io"
74 | }
75 | ]
76 | },
77 | "url": "https://fahrplan.events.ccc.de/congress/2023/fahrplan/schedule.xml",
78 | "start": "2023-12-27",
79 | "end": "2023-12-30",
80 | "timezone": "Europe/Berlin",
81 | "refresh_interval": 1800,
82 | "version": 2023122701
83 | }
84 |
--------------------------------------------------------------------------------