An open API service indexing awesome lists of open source software.

https://github.com/kylmakalle/ipa

Some scripts and files that can help running your own ipa download server on GitHub. readme-dev.md for details
https://github.com/kylmakalle/ipa

fastlane ipa ipa-sign mobileprovision self-hosted signing

Last synced: 7 months ago
JSON representation

Some scripts and files that can help running your own ipa download server on GitHub. readme-dev.md for details

Awesome Lists containing this project

README

          

# IPA Signer

This repo contains some scripts and files that can help running your own ipa download server on GitHub.

## Usage

0. Setup github pages for your repo with `master` branch.

1. Manage to install all the dependences and **fastlane** from gemfile. You might google or check [fastlane docs](/fastlane)

2. Prepare your signing certificate on https://developer.apple.com. Include device [UUID](https://www.google.com/search?q=how+to+find+uuid+ios)s in your signing certificate. You can do it via website or fastlane [register_device](https://docs.fastlane.tools/actions/register_device/)

3. Fill in `.env` file based on `example.env`

4. [Optional] Create fresh `.mobileprovision` with `fastlane gen_provision`. It will force create new provisioning profile with Wildcard (`*`) bundle id for `SIGNING_CERT` specified in env.

5. Find some ipas and place them in `ipas` folder like this
`ipas/uncover/xxx.ipa`
6. Add additional info for ipa using `data.json` file in same directory.

```json
{
"title": "Additional app title",
"comment": "some comment to be shown near app in a list"
}
```

Remember, both title and comment are **optional**, as well as `data.json` file.

7. Run `Full Update.command` or `Update.command` (if you've already generated mobileprovision on **4th step**).
Do `chmod +x *.command` in case there's no permission to run these scripts.

You **can skip steps 1-4** on the next run/update.

If you've added new device or your provision/cert expired, you must run `fastlane gen_provision` or `Full Update.command` next time.

## Project structure

### `apps`

Contains currently used `%app%/Info.plist` files for Ad Hoc ipa downloads. Autogenerated.

### `fastlane`

Contains update scripts in Fastfile. Also should contain `.env` file based on `example.env`.
Some docs should be autogenerated as well.
[fastlane docs](/fastlane)

### `generator`

Contains `Wildcard.mobileprovision` for further signings in case you don't need to recreate profile each time.

### `ipas`

Contains original unsigned ipas with some optional data to fill in `readme.md`.

Scripts resign .`ipa`'s every run, so if you need to have all the ipas in the list, please make sure to not delete them from the folder.

### `readme.md`

Autogenerated list of available ipas based on recent `fastlane update` action.

### `plist_template.txt`

Template for `Info.plist` AdHoc file to be hosted on github.

### `Gemfile` + `Gemfile.lock`

Some ruby (fastlane) dependences.

### `CNAME`

CNAME for github website integration to your domain.

### `Full Update.command` & `Update.command`

Easy shortcuts to run ipa updates via simple double-clicking.

### `_config.yml`

Config for github jekyll theme.