defaultbrowser icon indicating copy to clipboard operation
defaultbrowser copied to clipboard

Do you have an option for the Arc browser ?

Open stevesup opened this issue 1 year ago • 6 comments

Hi,

Is there an option to make Arc browser the default browser ?

Regards, sw

stevesup avatar Mar 11 '24 17:03 stevesup

Hi @stevesup

If it registers as a HTTP handler it should work out of the box, do see #25

The tricky part can be the name, which the browser uses to register, it is not necessarily recognizable

jonasbn avatar Apr 15 '24 06:04 jonasbn

Hi Jonas,

Unfortunately, Arc browser does not register as a HTTP handler ...

Regards, Steve Williams

On 15 Apr 2024 2:14, Jonas Brømsø wrote:

Hi @stevesup https://github.com/stevesup

If it registers as a HTTP handler it should work out of the box, do see #25 https://github.com/kerma/defaultbrowser/issues/25

— Reply to this email directly, view it on GitHub https://github.com/kerma/defaultbrowser/issues/27#issuecomment-2055511373, or unsubscribe https://github.com/notifications/unsubscribe-auth/AY2TFPUMJL6ZCMC6BDYCYMLY5NV5VAVCNFSM6AAAAABEQW6DUGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANJVGUYTCMZXGM. You are receiving this because you were mentioned.Message ID: @.***>

Steve Williams

envelope @.***

Disclaimer: Copyright © 2024 Steve Williams. All Rights Reserved. No part of this email may be reproduced or transmitted in any form or by any means without written permission from Steve Williams.

stevesup avatar Apr 16 '24 13:04 stevesup

Seem that Arc is listed as browser if you run the command just defaultbrowser and see available options:

defaultbrowser
  iterm2
  safari
  chrome
  browser
  horse
  firefox

Selecting browser: Image

But I also see Zen Browser get offered up if I run defaultbrowser browser again, so must be some generic option, but allows me to switch between Arc and something else consistently.

matthewspear avatar Jan 18 '25 16:01 matthewspear

Hi @matthewspear

You should get an asterisk indicating your currently chosen default browser. There is a problem in the version currently available in most channels with the Chrome browser, since the name varied in casing, but it has been fixed in the GitHub repository:

  • https://github.com/kerma/defaultbrowser/pull/26

So what you observe could be related to that issue.

If you attempt to set the same default as is already set, you get a warning indicating this:

defaultbrowser
  iterm2
  zen
  chrome
* firefoxdeveloperedition
  safari
defaultbrowser firefoxdeveloperedition
firefoxdeveloperedition is already set as the default HTTP handler

jonasbn avatar Jan 25 '25 12:01 jonasbn

I just installed both Arc and Zen and did a small code change to my local fork of this repository (do note I am not an Objective-C programmer or in deep in the Apple ecosystem).

But I afterwards could get the following enriched list of HTTP handlers:

./defaultbrowser
  iterm2 (com.googlecode.iterm2)
  browser (company.thebrowser.Browser)
  zen (app.zen-browser.zen)
  chrome (com.google.Chrome)
* firefoxdeveloperedition (org.mozilla.firefoxdeveloperedition)
  safari (com.apple.Safari)

As pointed out by you @matthewspear Arc seem to register it self as:

  • browser (company.thebrowser.Browser)

But with the current implementation, there is not much that could help to recognize this as Arc.

I inspected the plist file:

plutil -convert xml1 -o - Preferences/company.thebrowser.Browser.plist

And there was a few mentions of the string arc.

plutil -convert xml1 -o - Preferences/company.thebrowser.Browser.plist|ag arc
	<key>TopBarColorCache</key>
	<key>arcMaxAutoOptInEnabled</key>
	<key>arc_quitAlwaysKeepsWindows</key>
	<key>useArcCoreFreezingImplementation</key>

And skip-jumping from the string: company.thebrowser.Browser to the actual plist file, which in my case is placed in my Library/ - I guess it could be placed elsewhere.

The plist file in /Applications in the Arc browser application folder does hold a bit more:

plutil -convert xml1 -o - Info.plist|ag arc
	<string>Arc</string>
	<string>Arc</string>
			<string>Arc Browser</string>
				<string>arcBrowser</string>
	<string>Access to "Desktop" is required to make files accessible from Arc.</string>
	<string>Access to "Downloads" is required for downloading files from the web and to make files accessible from Arc.</string>
	<string>Arc.BrowserApp</string>
	<string>Arc.sdef</string>
	<string>https://releases.arc.net/updates.xml</string>

But there does not seem to be a connection between the two, at least not one that is clear and one that I am aware of. But I am way in over my head

jonasbn avatar Jan 25 '25 13:01 jonasbn

I implemented a hack in my own fork, where I translate browser to arc for human consumption and accept the arc name for indicating the HTTP handler: browser:

./defaultbrowser
  iterm2
  arc
  zen
  chrome
* firefoxdeveloperedition
  safari

Setting arc as default:

./defaultbrowser arc

Listing again:

./defaultbrowser
  iterm2
* arc
  zen
  chrome
  firefoxdeveloperedition
  safari

Attempting to set arc when it is already set.

./defaultbrowser arc
arc is already set as the default HTTP handler

Do see:

  • https://github.com/jonasbn/defaultbrowser/tree/arc_hack

I would understand why the author would not want to do this, since it is ugly and you risk ending up maintaining all kinds of variations to browser names.

jonasbn avatar Jan 25 '25 13:01 jonasbn