Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/soffes/lagunitas
A Ruby gem for inspecting iOS IPAs
https://github.com/soffes/lagunitas
apple ios ruby
Last synced: 8 days ago
JSON representation
A Ruby gem for inspecting iOS IPAs
- Host: GitHub
- URL: https://github.com/soffes/lagunitas
- Owner: soffes
- License: mit
- Created: 2013-11-02T21:46:03.000Z (about 11 years ago)
- Default Branch: main
- Last Pushed: 2020-10-26T17:46:15.000Z (about 4 years ago)
- Last Synced: 2024-11-28T03:22:08.226Z (29 days ago)
- Topics: apple, ios, ruby
- Language: Ruby
- Homepage:
- Size: 86.9 KB
- Stars: 72
- Watchers: 3
- Forks: 11
- Open Issues: 1
-
Metadata Files:
- Readme: Readme.markdown
- License: LICENSE
Awesome Lists containing this project
README
# Lagunitas
Easy iOS IPAs inspection.
## Installation
Add this line to your application's Gemfile:
``` ruby
gem 'lagunitas'
```And then execute:
$ bundle
Or install it yourself as:
$ gem install lagunitas
## Usage
``` ruby
ipa = Lagunitas::IPA.new('path/to/Your.ipa')# Unzip and create app
app = ipa.app #=> Lagunitas::App# Get information about the app
app.identifier #=> com.samsoffes.Sample
app.display_name #=> Sample
app.version #=> 13
app.short_version #=> 2.2# Get an icon path at a specific size
app.icon(40) #=> '/absolute/path/to/[email protected]'# You can also get all of the icons with their dimensions
app.icons #=> [{path:'...', width: 40, height: 40}, ...]# Remove unzipped app
ipa.cleanup
```It's worth noting that if you get a path to an image in the bundle, it will be crushed with Apple's special PNGCrush. I have a gem to convert them called [pngdefry](https://github.com/soffes/pngdefry). Lagunitas depends on this already to get sizes for the icons. If you want to get a useable PNG out, do something like this:
``` ruby
icon_path = app.icon(40)
Pngdefry.defry(icon_path, "output.png")
```## Contributing
1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request