Crossbox 2

Yeah, I believe that was an unrelated bug/regression I fixed this week. Guess you’ll want a n ew build of Fire, after all ;). I’ll see what I can do — unless waiting u til tomorrow is ok for you?

Thanks. I can wait until tomorrow

1 Like

Register now works.

With just a username and password when I attempt to debug I get

~> The process failed to start with the following error: Private key is encrypted but passphrase is empty.

At the moment Im still running with a password because I havent been able to get ssh to work with a key file and not have it also ask for a password.

That’s curious. can I see whats in your CrossBoxServers.xml file (you can XX-out the passwords). if you have a password, it should not try to access a key.

It looks like this

<ServerConfig>
	<servers>
		<server2 name="raspberry" platform="Linux" architecture="armv7l" hostname="192.168.0.18" port="22" username="pi" keyFile="/Users/JohnMoshakis/.ssh/id_rsa" password="xxxx"/>
		<server2 name="192.168.0.10" platform="Linux" architecture="armv7l" hostname="192.168.0.10" port="22" username="pi" hasPassword="true"/>
		<server2 name="192.168.0.10" platform="Linux" architecture="armv7l" hostname="192.168.0.10" port="22" username="pi" hasPassword="true"/>
	</servers>
</ServerConfig>

I ended up with the last 2 because I couldnt edit what I had added. What does haspassword mean and why doesnt it have password like the first one ?

I modified the file myself and replaced haspassword with password and I get this

~> The process failed to start with the following error: gdbserver is not installed on the remote server! Please install it with the appropriate package manager like “apt-get install gdbserver”

Should the instructions be updated ? The additional steps here

https://docs.elementscompiler.com/Tools/CrossBox/CrossBox2/SettingUp/#q=crossbox

mention gdb

Curious. Fire shoukld Neve raster the password in the file, it stirs it in the KeyChain (like a good Mac app ;), and stores "hasPassword=yes to indicate that (without that, it would not look for a password in the KeyChain, and instead use the (default, if none specified) key fie.

I’m not sure how you got the password="xxxx" entry… actually, it could be the EBuild.exe sets that, even on Mac. that’d be a bug…

I assume you get the error on the “192.168.0.10” server?

(the dupe entry should no no harm, fwiw, but it’d remove it jic).

So I now have this

<ServerConfig>
	<servers>
		<server2 name="192.168.0.10" platform="Linux" architecture="armv7l" hostname="192.168.0.10" port="22" username="pi" hasPassword="true" useAgent="true"/>
	</servers>
</ServerConfig>

But trying to debug inside Fire I get

The process failed to start with the following error: Private key is encrypted but passphrase is empty.

Yeah, I know whats going on. this cant work as it is; Fire uses the keychain, but the debugger is .NET and doesn’t :(. I’ll have to refactor this and either make the managed code able to access the keychain (ugh) or always store the password in the xml (ugh^2).

For now the only workaround is to manually add password="xxx" to the entry yourself.

Thanks, logged as bugs://84497

Fixed I think; I’ll try to send you a new Fire tomorrow.

1 Like

WIth that workaround I can debug.

1 Like

bugs://84497 got closed with status fixed.

This workaround seems to have stopped working with the latest. I still have password in the crossbox.xml file, it connects and detects Linux from Fire.

When I try and debug I get

The process failed to start with the following error: Private key is encrypted but passphrase is empty.

Correct, CrossBox should now consistently be issue the keychain, both managed and unmanaged versions, on Mac. any password still in the xml will be ignored.

Yes, it doesn’t see the password, so it uses your default key, which is encrypted. You’ll need to reregister so it stores the password properly.

Thanks. I didnt realize you had implemented it so quickly.

1 Like