alberti42 / Volume-Control

Successor of iTunes Volume Control
GNU General Public License v3.0
210 stars 9 forks source link

Great work - Extremely useful - Hell to install on M1/Ventura #18

Open FawziD opened 1 year ago

FawziD commented 1 year ago

I've been using Volume Control for a while. Until I switched to an M1 MBPro with Ventura. I use it because while at my desk I use my MBPro's speakers simultaneously with an HomePod mini via AirPlay. The HomePod mini plays lower to mid frequencies while the MBPro plays mids to highs. Which gives me a better listening experience than either one alone. So I just needed something to control both levels at the same time.

I finally decided to try installing it again. Reinstalled Xcode I had uninstalled it because I didn't need the CLT that I needed before for a reason that escapes me. And I reactivated my developper account that I had setup to install Beta software. Anyway, I had never compiled an app with Xcode before (some AppleScripts and messed with ResEdit eons ago for software localization). The provisioning part in particular was painful to understand and to execute. And I had to remove VC from Accessibility in Security & Privacy and relaunch it for it to finally work.

Anyway, all this to say, first of all Thank you for this great little utility ! And second, I'm sure a step by step guide to get it to run on Ventura would be greatly appreciated for all the Ventura and later OS users that will inexorably grow in numbers.

Thanks again !

alberti42 commented 1 year ago

Hi! Thank you for your feedback. I am glad that it finally worked for you. Yes, the provisioning part is quite tricky. In the past years, it has become increasingly difficult to follow all changes in matter of security by Apple. I cannot say I grasp entirely what the right way to distribute apps for Ventura is without paying Apple for a certificate.

I take your feedback and if I will have time, I will write a step-by-step guide how to compile the program for Ventura.

Andrea

On 18. Jan 2023, at 03:44, ChouCroute @.***> wrote:

I've been using Volume Control for a while. Until I switched to an M1 MBPro with Ventura. I use it because while at my desk I use my MBPro's speakers simultaneously with an HomePod mini via AirPlay. The HomePod mini plays lower to mid frequencies while the MBPro plays mids to highs. Which gives me a better listening experience than either one alone. So I just needed something to control both levels at the same time.

I finally decided to try installing it again. Reinstalled Xcode I had uninstalled it because I didn't need the CLT that I needed before for a reason that escapes me. And I reactivated my developper account that I had setup to install Beta software. Anyway, I had never compiled an app with Xcode before (some AppleScripts and messed with ResEdit eons ago for software localization). The provisioning part in particular was painful to understand and to execute. And I had to remove VC from Accessibility in Security & Privacy and relaunch it for it to finally work.

Anyway, all this to say, first of all Thank you for this great little utility ! And second, I'm sure a step by step guide to get it to run on Ventura would be greatly appreciated for all the Ventura and later OS users that will inexorably grow in numbers.

Thanks again !

β€” Reply to this email directly, view it on GitHub https://github.com/alberti42/Volume-Control/issues/18, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAPC4CBE2JE45REKDS226TWS5KIXANCNFSM6AAAAAAT6RZ7QI. You are receiving this because you are subscribed to this thread.

Drarig29 commented 1 year ago

First of all, thank you for this tool.

I tried to write a step-by-step guide on how to compile for Ventura, first trying without Xcode installed, then trying without opening Xcode at all. But it was required to add a developer account to be able to sign the program.

So in the end, I had to install Xcode, open it and add my developer account. But there was still an error because I wasn't allowed to sign your bundle identifier org.Alberti42.VolumeControl.

image

I tried a bunch of things, and I saw your note on running codesign --force --deep -s - /Applications/Volume\ Control.app, but it requires the application to have been built.

The easiest solution is just to change the bundle identifier. In my case, I changed it to com.drarig29.VolumeControl.

Cons:

So here is the step-by-step guide:


Prerequisites:

Once Xcode is installed:

  1. git clone https://github.com/alberti42/Volume-Control
  2. Open the cloned project in Xcode
  3. Hit ⌘ 1 to open the Project navigator
  4. Click on project name "Volume Control" (the root of the tree) and go in the "Signing & Capabilities" tab.
  5. In "Team", choose your own Personal Team (you may need to add your Apple ID account).
  6. Change the "Bundle identifier" from org.Alberti42.VolumeControl to something unique: org.<your_unique_id>.VolumeControl
  7. Ensure you are allowed to compile and signing is up-to-date:
    • If you recently rebooted, you'll have to hit ⌘ B in Xcode to build the project. This will trigger "Update signing" for you (which is not possible in command line).
  8. Remove the PhaseScriptExecution phase in the "Build Phases" tab.
  9. Close Xcode (you won't need it anymore) and run xcodebuild in the project folder to create a release build.
  10. You'll find the application in ./build/Release.
  11. Just drag it in your "Applications" folder! πŸŽ‰
image
cambrown1 commented 1 year ago

Thank you Andrea for creating this, and Drarig29 for the step-by-step instructions. It's all working for me now, and life is great! Much appreciated both of you.

jonbhanson commented 11 months ago

I tried building, but I recieved the following error:

Set: Entry, ":CFBundleVersion", Does Not Exist
Set: Entry, ":CFBundleShortVersionString", Does Not Exist
Command PhaseScriptExecution failed with a nonzero exit code

Any advice on how to resolve this error?

Drarig29 commented 11 months ago

I had the same issue and removed the PhaseScriptExecution build phase here:

image

I added this as step 8 in my instructions.

jonbhanson commented 11 months ago

Perfect, thanks @Drarig29. As soon as I deleted the PhaseScriptExecution phase, it built fine. Installed it and it's working once again!

Drarig29 commented 9 months ago

Just adding a new keyword to the thread: Sonoma

(this is the update after Ventura, which still requires the instructions above)