No Description

Willy-JL ca528e9c4e Add configs for chess 2 years ago
.modules cd6dc6a5a3 CameraSuite: Icons, GPIO channel 2 years ago
4inrow d78bfc9598 4inRow: Tweaks and fixes 2 years ago
airmouse e8bed4c26c Airmouse: Change name and save location 2 years ago
apple_ble_spam f1d73125f6 Add apps by Xtreme team 2 years ago
asteroids 0e7bd55546 Asteroids: Fix save path 2 years ago
barcode_gen 8ec390df05 Barcode: Encoding tables as assets 2 years ago
bomberduck d8263e00ea Bomberduck: Fix dolphin deeds 2 years ago
bpmtapper e5b0fb3c63 BPMTapper: Icon, fixes and category 2 years ago
brainfuck 35a24a94a0 Brainfuck: Save location, icons 2 years ago
caesarcipher 678ff7d3ec Caesarcipher: Mutex and category fixes 2 years ago
chess ca528e9c4e Add configs for chess 2 years ago
cli_bridge 902032e0cd Add upstream remote 2 years ago
esp_flasher a0c9700a65 Switch to subtrees 2 years ago
jetpack_joyride 5a9195f94b Fix typo 2 years ago
multi_fuzzer a0c9700a65 Switch to subtrees 2 years ago
nfc_maker f1d73125f6 Add apps by Xtreme team 2 years ago
protoview c5cff2e5a6 Protoview: Add back tweaks and fixes 2 years ago
sentry_safe a0c9700a65 Switch to subtrees 2 years ago
subghz_bruteforcer a0c9700a65 Switch to subtrees 2 years ago
wifisniffer f1d73125f6 Add apps by Xtreme team 2 years ago
.gitconfig 5e18b80fb8 FIx add-app when not using linking 2 years ago
.gitignore dfd15232a3 Add .gitignore 2 years ago
.gitmodules 83fbc6af87 Add dap link submodule 2 years ago
README.md 53274543e3 New add-app alias and rename subtree to app in aliases 2 years ago
application.fam 39a48d88e5 Add metapackage manifest 2 years ago
avr_isp 0245660866 Rename good-faps module and branch 2 years ago
camera_suite 32554ef4e2 Add configs for camera_suite 2 years ago
dap_link 0245660866 Rename good-faps module and branch 2 years ago
geiger a80f0ece7f Add configs for geiger 2 years ago
hid_app 0245660866 Rename good-faps module and branch 2 years ago
mass_storage 0245660866 Rename good-faps module and branch 2 years ago
mayhem_camera 8dde56b0c7 Add mayhem apps 2 years ago
mayhem_marauder 8dde56b0c7 Add mayhem apps 2 years ago
mayhem_morseflash 8dde56b0c7 Add mayhem apps 2 years ago
mayhem_motion 8dde56b0c7 Add mayhem apps 2 years ago
mayhem_nannycam 8dde56b0c7 Add mayhem apps 2 years ago
mayhem_qrcode 8dde56b0c7 Add mayhem apps 2 years ago
mfkey32 0245660866 Rename good-faps module and branch 2 years ago
music_player 0245660866 Rename good-faps module and branch 2 years ago
nfc_magic 0245660866 Rename good-faps module and branch 2 years ago
nfc_rfid_detector 0245660866 Rename good-faps module and branch 2 years ago
picopass 0245660866 Rename good-faps module and branch 2 years ago
spi_mem_manager 0245660866 Rename good-faps module and branch 2 years ago
totp 65631f3951 Link totp 2 years ago

README.md

Xtreme-Apps

Bundle of external apps tweaked for Xtreme

Why?

Apps we use for Xtreme are all modified (some lots more than others). This includes:

  • Removing duplicate icons that are part of firmware to support our Asset Packs system
  • Removing duplicate keyboard implementations to use our extended system keyboard
  • With our system keyboard also support our CLI command input keyboard to type with PC keyboard
  • Moving location of save files or changing how they are saved
  • Changing application display names to fit our scheme
  • Changing how some menus work/look or adding new exclusive menus and features
  • Improving or extending functionality and better integrating with Xtreme firmware
  • Updating and fixing apps that were abandoned by the original developers

How?

Apps made by the Xtreme team are kept as plain code here. For all others we use git subtrees to pull updates from elsewhere but also keep our own tweaks. We didn't want to have fork repos for each single app since it would get out of hand very quick. Instead, we opted for subtrees.

Subtrees work in a very peculiar way, where they pull and compare commit history from a remote repo and apply it to a subdirectory of this repo. That's why the commit history for our repo is so huge, it contains all the commits for all the apps, plus our edits.

To make updating more manageable, we have added another layer on top of subtrees:

  • set it up by running git config --local include.path ../.gitconfig
  • add a new app with git add-app <path> <repo> <branch>, this will pull the commit history and create a path/.gitremote to remember the url and branch
  • run git update-app to pull updates based on the current subtree directory
  • or run git bulk-update-apps to do it for all subtrees

Also, some repos dont have the code in their top-level folders, so for those we have symlinks from our root folder to the approriate place in .modules/.