Meta: Use dynamic file list in Xcode - #6612
Conversation
|
I think we already tried symlink before. The problem is that it copies the whole I think |
|
Can you try building and running it in Safari macOS? It seems to work correctly in the iOS Simulator (I only manage to run the dev version on macOS if I uninstall RGH completely) |
|
Well, this works on iOS somehow but it crashes Safari macOS. I'll move the assets to |
|
I don't think |
|
The downsides of the scripts are that it doesn’t watch the FS so developing the extension in Safari means having to build it manually every time. Extension testing seems already broken compared to the default setup since Safari can’t see the extension until I uninstall the App Store version, usually the dev version automatically replaces it immediately. |
There was a problem hiding this comment.
Tested on macOS Safari:
- content script
- options page
- background page (via
open-all-notifications) resolve-conflictson https://github.com/refined-github/sandbox/pull/14/conflicts
However today iOS decided to fail building here and on main 🤷♂️
|
|
||
| /* Begin PBXBuildFile section */ | ||
| 1F9945322A07DB5E005BC236 /* resources in Resources */ = {isa = PBXBuildFile; fileRef = 1F9945312A07DB5E005BC236 /* resources */; }; | ||
| 1F9945332A07DB5E005BC236 /* resources in Resources */ = {isa = PBXBuildFile; fileRef = 1F9945312A07DB5E005BC236 /* resources */; }; |
I'm getting this too. If you look at the full log, this is the problem:
|
|
Fixed in |
|
codesign worked for me eventually, I had to reset my keys in the keychain etc etc, hundreds of people complaining about that issue for years on Stackoverflow. One also mentioned the possible incompatibility with folders called |
|
Hmm, actually no. Now it complains about the manifest file (
|
|
The extension contains: However, a proper extension has all the resources in a |
| E3919AF727E61192009C4956 /* refined-github.js.LICENSE.txt in Resources */ = {isa = PBXBuildFile; fileRef = E3919AE627E61192009C4956 /* refined-github.js.LICENSE.txt */; }; | ||
| E3919AF827E61192009C4956 /* refined-github.js.LICENSE.txt in Resources */ = {isa = PBXBuildFile; fileRef = E3919AE627E61192009C4956 /* refined-github.js.LICENSE.txt */; }; | ||
| E3919AF927E61192009C4956 /* manifest.json in Resources */ = {isa = PBXBuildFile; fileRef = E3919AE727E61192009C4956 /* manifest.json */; }; | ||
| E3919AFA27E61192009C4956 /* manifest.json in Resources */ = {isa = PBXBuildFile; fileRef = E3919AE727E61192009C4956 /* manifest.json */; }; |
There was a problem hiding this comment.
Double-check, this PR only moves the assets one level deep. Manifest.json is unchanged in Resources/manifest.json
I stupidly named this subfolder resources (for extra confusion 😅) though so you should be seeing Resources/resources/background.js
| E3919AC127E6107E009C4956 /* Resources */ = { | ||
| isa = PBXGroup; | ||
| children = ( | ||
| E3919AEA27E61192009C4956 /* background.js */, | ||
| E3919AED27E61192009C4956 /* icon.png */, | ||
| 1F9945312A07DB5E005BC236 /* resources */, | ||
| E3919AE727E61192009C4956 /* manifest.json */, |
There was a problem hiding this comment.
- Resources/resources/*
- Resources/manifest.json
| children = ( | ||
| E3919AEA27E61192009C4956 /* background.js */, | ||
| E3919AED27E61192009C4956 /* icon.png */, | ||
| 1F9945312A07DB5E005BC236 /* assets */, |
|
Thanks for checking! Fixed. I'll make the options open in a new tab in a future release instead of a popup and also get the value from the manifest dynamically: const optionsPage = browser.runtime.getManifest().options_ui?.page; |




Xcode has static project file lists so if our files are dynamically created one needs to open Xcode and update the project.
This seems to add a link to the parent
distributionfolder so that only one item needs to be static.Inspired by: