holzschu / holzschu/a-shell

Cannot build from fresh clone — missing frameworks not available for download

Open
#1,005 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Perl
Stars
3.9k
Forks
213
Avg merge
1m
Merged PRs (30d)
1

Description

## Problem

A fresh clone following the README build instructions fails because several frameworks are not included in `downloadFrameworks.sh` and are not available on any public GitHub release.

## Steps to Reproduce

```bash
git clone --recursive https://github.com/holzschu/a-shell.git
cd a-shell
./downloadFrameworks.sh
# Open in Xcode, build any target → fails
```

## Missing Frameworks

### Not published anywhere
These are referenced in `project.pbxproj` but not defined in `xcfs/Package.swift` and not available on any GitHub release:

| Framework | Expected path | Notes |
|-----------|--------------|-------|
| `pico.framework` | `xcfs/.build/artifacts/xcfs/pico.framework` | Added in commit `0c85d84d` (Oct 2022) |
| `openrsync.framework` | `xcfs/.build/artifacts/xcfs/openrsync.framework` | Added recently |
| `openrsyncA.framework` | `xcfs/.build/artifacts/xcfs/openrsyncA.framework` | Added recently |
| `blink.xcframework` | `xcfs/.build/artifacts/xcfs/blink.xcframework` | Deleted from repo in `853b6229` (Nov 2023) but still referenced in project |

### Not in download script
These exist on GitHub releases but aren't included in `downloadFrameworks.sh` or `xcfs/Package.swift`:

| Framework | Available at | Expected path |
|-----------|-------------|---------------|
| `ssh_cmdA` | [ios_system v3.0.5](https://github.com/holzschu/ios_system/releases/tag/v3.0.5) | `xcfs/.build/artifacts/xcfs/ssh_cmdA/` |
| `ssh_agent` | [ios_system v3.0.5](https://github.com/holzschu/ios_system/releases/tag/v3.0.5) | `xcfs/.build/artifacts/xcfs/ssh_agent/` |
| `libpng` | [Python-aux 1.0](https://github.com/holzschu/Python-aux/releases/tag/1.0) | `cpython/Python-aux/libpng.xcframework` |

### Path mismatch
`freetype.xcframework` and `harfbuzz.xcframework` are downloaded by SPM to `xcfs/.build/artifacts/xcfs/` but the project expects them at `cpython/Python-aux/`.

### Checksum mismatch
OpenSSL fails to download via SPM:
```
error: checksum of downloaded artifact of binary target 'openssl' (329e8317...)
does not match checksum specified by the manifest (421712e7...)
```

### Python frameworks
`pythonA.framework` (at `Resources_mini/Frameworks/`) requires running the full CPython build (`cpython/downloadAndCompile.sh`) followed by `updatePythonFiles.sh`. This is documented but takes several hours.

## Environment
- macOS 15, Apple Silicon
- Xcode 26.2
- Commit `9013425d` on `master`

## Suggestion
Would it be possible to either publish the missing frameworks (pico, openrsync) as GitHub release assets, or add them to `xcfs/Package.swift` so `downloadFrameworks.sh` fetches everything needed?

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.