|
| 1 | +<p align="center"> |
| 2 | + <img src="https://raw.githubusercontent.com/codeboy2012/PwEevee/refs/heads/main/website/assets/icon-512.png" width="160" alt="PwEevee"> |
| 3 | +</p> |
| 4 | + |
1 | 5 | <h1 align="center">PwEevee</h1> |
2 | 6 |
|
3 | | -<p align="center"><strong>An independent integration & distribution project — |
4 | | -one Spotify IPA carrying two great tweaks, built, tested and published by us; |
5 | | -created by others.</strong></p> |
| 7 | +<p align="center"> |
| 8 | + <strong> |
| 9 | + An independent Spotify iOS integration, build, and distribution project. |
| 10 | + </strong> |
| 11 | +</p> |
6 | 12 |
|
7 | 13 | <p align="center"> |
8 | | - <a href="#what-this-is">What this is</a> · |
9 | | - <a href="#build-it">Build it</a> · |
| 14 | + <a href="#about">About</a> · |
| 15 | + <a href="#current-release">Current Release</a> · |
| 16 | + <a href="#what-pweevee-does">What PwEevee Does</a> · |
| 17 | + <a href="#repository">Repository</a> · |
| 18 | + <a href="#building">Building</a> · |
10 | 19 | <a href="#website">Website</a> · |
11 | 20 | <a href="#credits">Credits</a> · |
12 | | - <a href="#ai-disclosure">AI disclosure</a> · |
13 | | - <a href="#license--rights">Legal</a> |
| 21 | + <a href="#ai-disclosure">AI Disclosure</a> · |
| 22 | + <a href="#legal--rights">Legal</a> |
14 | 23 | </p> |
15 | 24 |
|
16 | 25 | --- |
17 | 26 |
|
18 | | -## What this is |
19 | | - |
20 | | -PwEevee does **not** create the software it distributes. It is an independent |
21 | | -integration/build/distribution project that: |
22 | | - |
23 | | -- obtains and prepares compatible upstream components |
24 | | -- integrates [spoti.pw](https://github.com/skopevoj/spoti.pw) and EeveeSpotify into one IPA |
25 | | -- resolves their dependencies (duplicates fail the build) |
26 | | -- injects the tweaks into your decrypted Spotify binary and installs their resources |
27 | | -- validates every build (Mach-O load commands, dependency presence, filesystem |
28 | | - structure, package format) |
29 | | -- packages a reproducible IPA with a full build manifest |
30 | | -- hosts recent builds and archives older ones |
31 | | - |
32 | | -We do **not** claim ownership of upstream projects, authorship of upstream tweaks, or |
33 | | -any affiliation with Spotify, Apple, spoti.pw or EeveeSpotify. All trademarks belong to |
34 | | -their respective owners; upstream licenses remain applicable. |
35 | | - |
36 | | -### What's in a build |
37 | | - |
38 | | -| Component | Upstream | Role in the IPA | |
39 | | -|---|---|---| |
40 | | -| spoti.pw 0.22.0 | [skopevoj/spoti.pw](https://github.com/skopevoj/spoti.pw) (PolyForm Strict 1.0.0; ≤ 0.21.1 GPL-3.0) | `Frameworks/spotifyglass.dylib` — Liquid Glass UI, Mod Settings, Live Activity | |
41 | | -| EeveeSpotify 6.6.8 | Eevee (author); the upstream self-contained deb is maintained by jaydenjcpy | `Frameworks/EeveeSpotify.dylib`, Orion + EeveeSwiftProtobuf frameworks, `EeveeSpotify.bundle`, 142 custom icons | |
42 | | -| CydiaSubstrate | Saurik (as shipped in the proven spoti.pw build) | runtime framework | |
43 | | -| Spotify 9.1.84 | Spotify AB | the app itself — the decrypted Spotify app is the build's input | |
44 | | - |
45 | | -## Repository layout |
46 | | - |
47 | | -``` |
48 | | -Spotipw/ the upstream spoti.pw project, kept intact under its own identity |
49 | | -PwEvevee/ the unified integration/build system — this project's own code |
50 | | - build-system/ the ONE pipeline: unified.sh, validate, package, tests, release |
51 | | - dependencies.json load-command + shared-dependency policy (single source of truth) |
52 | | -Evevee Spotify/ EeveeSpotify payloads + the audited artifacts they came from |
53 | | - component/ extracted Eevee payload: dylib, frameworks, bundle, 142 icons |
54 | | - source-artifacts/ the upstream debs/IPAs everything was extracted from |
55 | | -docs/ ARCHITECTURE · BUILD · TROUBLESHOOTING · DEVELOPMENT |
56 | | -website-src/ website source: layout + page templates (the site is generated) |
57 | | -website/ the generated website (static; downloads resolve to GitHub releases) |
58 | | -releases/ scripts/ local release archive + 6-month retention · shared tooling · update-releases.sh |
59 | | -``` |
60 | | - |
61 | | -## Build it |
62 | | - |
63 | | -Requirements: bash, perl (core modules only), xz, unzip. No Theos, no Xcode, no macOS. |
64 | | - |
65 | | -```bash |
66 | | -bash PwEvevee/build-system/unified.sh <decrypted Spotify 9.1.84 .ipa> -o dist/my-build.ipa |
67 | | -``` |
68 | | - |
69 | | -That single command runs the whole pipeline — merge → resolve → inject → validate → |
70 | | -package → manifest → tests — and stops with a named error if anything is wrong. |
71 | | -Details, verification steps and the test suite: [docs/BUILD.md](docs/BUILD.md). |
72 | | -The injected load-command contract is byte-audited against the proven reference build |
73 | | -(docs/UNIFICATION-AUDIT.md). |
74 | | - |
75 | | -Output is an **unsigned** IPA; sign it with your own certificate (SideStore, Feather, |
76 | | -AltStore, Sideloadly). Compatibility is verified for Spotify 9.1.84 + spoti.pw 0.22.0 + |
77 | | -EeveeSpotify 6.6.8 — other Spotify versions are not tested. |
78 | | - |
79 | | -Building the upstream tweak itself from source (Theos/macOS) still works exactly as |
80 | | -upstream documents it: see [docs/tweaks.md](docs/tweaks.md) and the |
81 | | -[upstream repository](https://github.com/skopevoj/spoti.pw). |
82 | | - |
83 | | -## Website |
84 | | - |
85 | | -Hosted on SkyTweak infrastructure: |
86 | | - |
87 | | -- **Canonical:** `https://pweevee.skytweak.dpdns.org/` |
88 | | -- Alternate path `https://skytweak.dpdns.org/pweevee` redirects to the canonical URL |
89 | | - |
90 | | -**GitHub is the release source of truth.** The website hosts no build files of its |
91 | | -own: every download it offers resolves to a published |
92 | | -[GitHub release](https://github.com/codeboy2012/spoti.pw-builds/releases) asset, or to |
93 | | -the download URL named by the upstream source that publishes it. Where a release has |
94 | | -no downloadable asset, the page says "Download currently unavailable" and offers the |
95 | | -release on GitHub instead of a broken button. The site includes full credits, an |
96 | | -AI-development disclosure, maintainer status, hosting/removal policy and contact |
97 | | -information. |
98 | | - |
99 | | -The site is a static, dependency-free build generated from `website-src/`. Release |
100 | | -information is never typed in by hand — one command refreshes it: |
101 | | - |
102 | | -```bash |
103 | | -scripts/update-releases.sh |
104 | | -``` |
105 | | - |
106 | | -That does four things: |
107 | | - |
108 | | -1. queries the GitHub API for the newest published release of PwEevee, spoti.pw and |
109 | | - EeveeSpotify (repositories declared once in `website/data/projects.json`) and |
110 | | - regenerates `website/data/releases.json` |
111 | | -2. reads every declared AltSource — currently the |
112 | | - [SideloadLabs source](https://github.com/SideloadLabs/SideloasLabs-AltSource), which |
113 | | - publishes the installable EeveeSpotify IPA variants — into |
114 | | - `website/data/altsource.json` |
115 | | -3. re-renders every page |
116 | | -4. runs the site checks |
117 | | - |
118 | | -Drafts are never used; if a source is unreachable the previous known-good data is kept |
119 | | -and flagged rather than replaced with nothing. The two data sources stay separate and |
120 | | -are labelled on the page: a GitHub release is never presented as an AltSource entry, or |
121 | | -the other way round. No GitHub token ever reaches the browser. |
122 | | - |
123 | | -## Credits |
124 | | - |
125 | | -**Everything users love about this build was made by other people:** |
126 | | - |
127 | | -- **spoti.pw** — Vojtěch Škopek ([skopevoj](https://github.com/skopevoj)) — |
128 | | - [repo](https://github.com/skopevoj/spoti.pw) · |
129 | | - support: [Ko-fi](https://ko-fi.com/darkksh) |
130 | | -- **EeveeSpotify** — Eevee (upstream author); the upstream self-contained deb PwEevee |
131 | | - integrates is maintained by jaydenjcpy — |
132 | | - no official donation link was found; none is invented here |
133 | | -- **Orion** ([theos](https://github.com/theos/Orion)), **EeveeSwiftProtobuf**, |
134 | | - **CydiaSubstrate** (Saurik) — bundled runtime dependencies, as shipped upstream |
135 | | -- **libbs2b** (MIT), **WDL/EEL2** (zlib) — vendored by spoti.pw, licenses preserved |
136 | | - |
137 | | -**This project's contribution** is integration engineering, packaging, validation, |
138 | | -hosting and documentation — see the full credit page on the website. |
139 | | - |
140 | | -If you enjoy this build, support the upstream developers. Donations go directly to |
141 | | -them; nothing is routed through this project. |
142 | | - |
143 | | -## AI disclosure |
144 | | - |
145 | | -Yes — AI was used to build this project: |
146 | | - |
147 | | -- **Freebuff** — main coding/build agent (repository work, implementation, build |
148 | | - automation, testing, troubleshooting) |
149 | | -- **ChatGPT** — prompting, planning, troubleshooting, debugging, research assistance |
150 | | -- **Human maintainer** — direction, implementation decisions, review, device testing, |
151 | | - release decisions; participates directly in development |
152 | | - |
153 | | -AI was used as a development tool for this integration project. It is not presented as |
154 | | -the creator of spoti.pw or EeveeSpotify. |
155 | | - |
156 | | -## Maintainer status & continuation |
| 27 | +## About |
| 28 | + |
| 29 | +**PwEevee** is an independent integration and distribution project for modified Spotify iOS builds. |
| 30 | + |
| 31 | +PwEevee brings together upstream projects and their components into a unified build workflow rather than creating those projects from scratch. |
| 32 | + |
| 33 | +The project currently combines: |
| 34 | + |
| 35 | +- **SpoTi.pw** |
| 36 | +- **EeveeSpotify** |
| 37 | +- Their required supporting components and dependencies |
| 38 | +- A unified integration and packaging pipeline |
| 39 | +- Automated validation and build testing |
| 40 | +- A public release and distribution website |
| 41 | + |
| 42 | +The goal is to provide a clear, reproducible, and transparent way to build and distribute a unified Spotify iOS IPA while preserving attribution to the projects and people whose work makes the functionality possible. |
| 43 | + |
| 44 | +PwEevee does **not** claim authorship of SpoTi.pw, EeveeSpotify, Spotify, Apple, or any other upstream software. |
| 45 | + |
| 46 | +--- |
157 | 47 |
|
158 | | -Maintained by **one developer** in available free time. There is **no guaranteed |
159 | | -release schedule**. If this maintainer stops, someone else may be able to continue the |
160 | | -project from the available source and the applicable upstream licenses and rights — |
161 | | -preserving licenses, copyright notices, attribution and upstream requirements. This is |
162 | | -not a claim of unrestricted redistribution rights. |
163 | | - |
164 | | -## License & rights |
165 | | - |
166 | | -- spoti.pw 0.22.0: PolyForm Strict 1.0.0 (releases ≤ 0.21.1: GPL-3.0); its vendored |
167 | | - third-party code keeps its own licenses |
168 | | -- EeveeSpotify: as distributed upstream with the self-contained package |
169 | | -- This project's build scripts, website and documentation: the integration glue of |
170 | | - PwEevee — they do not and cannot re-license upstream software |
171 | | -- Hosting & removal: we may remove, replace, suspend or discontinue any published material |
172 | | - at any time; rights-holder requests are reviewed and may result in removal. No claim |
173 | | - of legal immunity or of ownership of upstream projects is made anywhere. |
| 48 | +## Current Release |
| 49 | + |
| 50 | +### PwEevee v0.22.0-alpha — Read Disc |
| 51 | + |
| 52 | +> ⚠️ **ALPHA RELEASE — KNOWN ISSUES** |
| 53 | +> |
| 54 | +> This is an experimental release containing known bugs and unfinished features. |
| 55 | +> It is not considered production-ready. |
| 56 | +
|
| 57 | +**Base:** SpoTi.pw v0.22.0 |
| 58 | +**Integrated component:** EeveeSpotify v6.6.8 |
| 59 | +**PwEevee release:** v0.22.0-alpha |
| 60 | +**Codename:** Read Disc |
| 61 | +**Status:** Alpha / Known Issues |
| 62 | + |
| 63 | +This is the first unified PwEevee release combining **SpoTi.pw v0.22.0** with **EeveeSpotify v6.6.8**. |
| 64 | + |
| 65 | +The resulting IPA has been tested and is working, but the project still contains known bugs and unfinished functionality. |
| 66 | + |
| 67 | +### Known issues |
| 68 | + |
| 69 | +Known issues include: |
| 70 | + |
| 71 | +- Bugs in certain features |
| 72 | +- Possible unexpected behavior |
| 73 | +- Installation or signing issues depending on the signing method |
| 74 | +- Integration issues that may still be discovered |
| 75 | +- **Custom app icons are currently not working** |
| 76 | + |
| 77 | +Custom app icon support is planned for investigation in a future release. |
| 78 | + |
| 79 | +There is currently **no guaranteed release schedule**. |
| 80 | + |
| 81 | +--- |
174 | 82 |
|
175 | | -Not affiliated with Spotify. Not affiliated with Apple. Not the upstream projects. |
| 83 | +## Why EeveeSpotify Is Integrated |
| 84 | + |
| 85 | +SpoTi.pw has historically provided Spotify modifications including functionality such as **Hide Ads** and **Spoof Premium**. |
| 86 | + |
| 87 | +Those capabilities are not expected to remain available as options in future SpoTi.pw releases. |
| 88 | + |
| 89 | +PwEevee therefore integrates EeveeSpotify into the SpoTi.pw-based build so that the project can continue providing a unified build containing functionality from both upstream projects. |
| 90 | + |
| 91 | +This does not make PwEevee the author of either project. |
| 92 | + |
| 93 | +Instead: |
| 94 | + |
| 95 | +```text |
| 96 | +SpoTi.pw |
| 97 | + │ |
| 98 | + ├── upstream project |
| 99 | + │ |
| 100 | + ▼ |
| 101 | +PwEevee integration |
| 102 | + │ |
| 103 | + ├── build |
| 104 | + ├── dependency resolution |
| 105 | + ├── integration |
| 106 | + ├── validation |
| 107 | + ├── packaging |
| 108 | + └── distribution |
| 109 | + │ |
| 110 | + ▼ |
| 111 | +Unified Spotify iOS IPA |
| 112 | + ▲ |
| 113 | + │ |
| 114 | +EeveeSpotify |
| 115 | + │ |
| 116 | + └── upstream project |
0 commit comments