Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Dronecatcher

macrumors 603
Jun 17, 2014
5,209
7,783
Lincolnshire, UK
I made a more elegant workaround for this.

I wrote a small dynamic library (dylib), that replace osx internal file open system call (fopen) with a faked version, that redirect any read from systemversion.plist to another file. Then replaced Dropbox launcher, with a prepared launcher because we need to inject the modified fopen to dropbox.

Source code, and modified .app, available here: http://homokozo.czo.hu/dropboxfixppc/

That was so funny - just received my "Welcome" email from Dropbox, telling me how "Awesome" it is I've linked a new device to their service, a "PowerMac G5" :D
 
  • Like
Reactions: zomLoso

Cox Orange

macrumors 68000
Jan 1, 2010
1,814
241
I made a more elegant workaround for this.

I wrote a small dynamic library (dylib), that replace osx internal file open system call (fopen) with a faked version, that redirect any read from systemversion.plist to another file. Then replaced Dropbox launcher, with a prepared launcher because we need to inject the modified fopen to dropbox.

Source code, and modified .app, available here: http://homokozo.czo.hu/dropboxfixppc/
If I already have the old Dropbox 3.2.9 PPC version installed, what do I have to do, step by step, if you don't mind?
 

Czo

macrumors 6502
Dec 30, 2008
433
267
Debrecen, Hungary
If I already have the old Dropbox 3.2.9 PPC version installed, what do I have to do, step by step, if you don't mind?

You can replace the app, but you can "patch" it by hand.

1. create a folder named "fix" in Dropbox.app/Contents
2. copy SystemVersion.plist and dropbox_faker.dylib to Dropbox.app/Contents/fix (if you wan't to build it yourself (xcode required), put build.sh and dropbox_faker.c, and run build.sh (this creates dropbox_faker.dylib))
3. rename 'Dropbox' to 'Dropbox.bin' in Dropbox.app/Contents/MacOS
4. put Dropbox from my site to Dropbox.app/Contents/MacOS, and chmod this file to 0755
 

Dronecatcher

macrumors 603
Jun 17, 2014
5,209
7,783
Lincolnshire, UK
I made a more elegant workaround for this.

I wrote a small dynamic library (dylib), that replace osx internal file open system call (fopen) with a faked version, that redirect any read from systemversion.plist to another file. Then replaced Dropbox launcher, with a prepared launcher because we need to inject the modified fopen to dropbox.

Source code, and modified .app, available here: http://homokozo.czo.hu/dropboxfixppc/

Thanks Czo, worked great as a fresh install.

I think you should put this in a separate thread as it might get overlooked and it's an ideal solution for users who don't already have dropbox installed or a saved PPC dmg.

Is there a way to access the app preferences that are disabled in the context menu - editing a prefs file maybe?
 

eyoungren

macrumors Penryn
Original poster
Aug 31, 2011
28,793
26,883
Is there a way to access the app preferences that are disabled in the context menu - editing a prefs file maybe?
I'm not sure about the operation of this new app, being that I applied the first fix, but while it was running showing the new interface you could hold down OPTN when you clicked on the Dropbox icon in the menubar to get to preferences.

Since I quit and restarted Dropbox after having reset my system version back to 10.5.8 I get the old interface.
 

Dronecatcher

macrumors 603
Jun 17, 2014
5,209
7,783
Lincolnshire, UK
I'm not sure about the operation of this new app, being that I applied the first fix, but while it was running showing the new interface you could hold down OPTN when you clicked on the Dropbox icon in the menubar to get to preferences.

Since I quit and restarted Dropbox after having reset my system version back to 10.5.8 I get the old interface.

Yep - you got it - works on this version too - thanks :D
 

Cox Orange

macrumors 68000
Jan 1, 2010
1,814
241
You can replace the app, but you can "patch" it by hand.

1. create a folder named "fix" in Dropbox.app/Contents
2. copy SystemVersion.plist and dropbox_faker.dylib to Dropbox.app/Contents/fix (if you wan't to build it yourself (xcode required), put build.sh and dropbox_faker.c, and run build.sh (this creates dropbox_faker.dylib))
3. rename 'Dropbox' to 'Dropbox.bin' in Dropbox.app/Contents/MacOS
4. put Dropbox from my site to Dropbox.app/Contents/MacOS, and chmod this file to 0755

OK, will try later. I think I don't have xcode installed, though.

Does "You can replace the app, but you can "patch" it by hand." mean that I can either just overwrite my existng app with yout download OR use the existing app and change it via the 4 steps lined out by you?

what is chmod? (sounds like shmock :D )
 

NathanJHill

macrumors regular
Oct 29, 2014
125
90
Czo: Great work. A nice solution for the time being.

Upon booting up my G5 today, Dropbox logged me out again, so I had to repeat the process by hand. I will be "correcting" the Dropbox app though per Czo's instructions above to prevent this from happening. I do kind of like the newer interface, even if it is not fully functional.
 

Czo

macrumors 6502
Dec 30, 2008
433
267
Debrecen, Hungary
OK, will try later. I think I don't have xcode installed, though.

Does "You can replace the app, but you can "patch" it by hand." mean that I can either just overwrite my existng app with yout download OR use the existing app and change it via the 4 steps lined out by you?

what is chmod? (sounds like shmock :D )

You can just overwrite the existing app with the patched one.
 

eyoungren

macrumors Penryn
Original poster
Aug 31, 2011
28,793
26,883
You can just overwrite the existing app with the patched one.
I did that last night.

After days of not having problems, a few forced restarts because of a crashing data recovery app while working on an external drive my Quicksilver decided to be logged out again and to stay logged out under Leopard.

So, I installed your patched app and the issue has gone away again.
 

Cox Orange

macrumors 68000
Jan 1, 2010
1,814
241
You can just overwrite the existing app with the patched one.

Thank you!

I guess it is not for Tiger, right?

When unzipping it I get an error message at the end of the progressbar: "error -1: action not allowed"
 

Aameiel

macrumors regular
Jan 22, 2011
161
4
Cape Coral, FL
I made a more elegant workaround for this.

I wrote a small dynamic library (dylib), that replace osx internal file open system call (fopen) with a faked version, that redirect any read from systemversion.plist to another file. Then replaced Dropbox launcher, with a prepared launcher because we need to inject the modified fopen to dropbox.

Source code, and modified .app, available here: http://homokozo.czo.hu/dropboxfixppc/

this worked perfect omg thank you sooooooo much
 

eyoungren

macrumors Penryn
Original poster
Aug 31, 2011
28,793
26,883
I made a more elegant workaround for this.

I wrote a small dynamic library (dylib), that replace osx internal file open system call (fopen) with a faked version, that redirect any read from systemversion.plist to another file. Then replaced Dropbox launcher, with a prepared launcher because we need to inject the modified fopen to dropbox.

Source code, and modified .app, available here: http://homokozo.czo.hu/dropboxfixppc/
I have added mention of your solution to the top of the thread in post #1. Thanks for your solution/contribution to solving this! :D
 

Czo

macrumors 6502
Dec 30, 2008
433
267
Debrecen, Hungary
I have added mention of your solution to the top of the thread in post #1. Thanks for your solution/contribution to solving this! :D

Thanks. I'm working on a better solution, because dropbox periodically try to self update (this cause high cpu usage on my powerbook), and i wan't to disable it. But, in workdays i don't have enough time to work on it.

----------

Thank you!

I guess it is not for Tiger, right?

When unzipping it I get an error message at the end of the progressbar: "error -1: action not allowed"

It's a good question. This zip is created in finder with "compress" menu, so i don't know why not uncompressing under Tiger. If u can uncompress it, it maybe works, or maybe not. Dropbox under Leopard and Snow Leopard using FSEvents API to monitor file changes in folders, and this API is unavailable in Tiger. I think, if we fake OS X version to Dropbox, the faked client can't work anymore under Tiger because of missing API's
 

Cox Orange

macrumors 68000
Jan 1, 2010
1,814
241
It's a good question. This zip is created in finder with "compress" menu, so i don't know why not uncompressing under Tiger. If u can uncompress it, it maybe works, or maybe not. Dropbox under Leopard and Snow Leopard using FSEvents API to monitor file changes in folders, and this API is unavailable in Tiger. I think, if we fake OS X version to Dropbox, the faked client can't work anymore under Tiger because of missing API's

I tried stuffitexpander now (instead of the build in unarchiver). Now it unzips completely without error message. (I have to type in my password several times though).
The result an invisible icon (you do see nothing until you click once on the name), but a visible icon-name "dropbox". When I drag and drop it into the applications folder I get the normal blue icon.

(I put my pre-existing install before, btw.)

When I then double click the new item, I am asked again to type in my system password. It takes some time than and I get a message:
"Dropbox couldn't be started.

Usually this points to an error in the permissions. Furthermore the saving of the base folder on a network share ("Netzwerkfreigabe") can cause an error.

If you need further information, please click on the help button below."

When I do this I am forwarded to a Dropbox trouble shooting page on the net.

Also, when I try to delete the icon/app it says, the app is running and can't be deleted. So I went to activity monitor and there was "dropbox.bin". I closed that process/thread.


I tried deleting the folder "dropbox_u501" now from library, and reinstalled the app. The folder in library is not created new. I have the "dropbox_u501" in my trash, still. It was installed on the 20th of may. In which library would I have to put it back?

Also, I reinstalled the old regular dropbox app per drag and drop from my trash, but the library folder was not created again. The app though gives me the set up window, where one can Type in his account infos (email, password).

I suppose the dropbox_u501 folder came with the new install. Do I need it and in what library would I have to put it back? It is also not created again, when I unzip the dropbox-app.zip just once more and install the app again.
 
Last edited:

Czo

macrumors 6502
Dec 30, 2008
433
267
Debrecen, Hungary
I tried stuffitexpander now (instead of the build in unarchiver). Now it unzips completely without error message. (I have to type in my password several times though).
The result an invisible icon (you do see nothing until you click once on the name), but a visible icon-name "dropbox". When I drag and drop it into the applications folder I get the normal blue icon.

(I put my pre-existing install before, btw.)

When I then double click the new item, I am asked again to type in my system password. It takes some time than and I get a message:
"Dropbox couldn't be started.

Usually this points to an error in the permissions. Furthermore the saving of the base folder on a network share ("Netzwerkfreigabe") can cause an error.

If you need further information, please click on the help button below."

When I do this I am forwarded to a Dropbox trouble shooting page on the net.

Also, when I try to delete the icon/app it says, the app is running and can't be deleted. So I went to activity monitor and there was "dropbox.bin". I closed that process/thread.


I tried deleting the folder "dropbox_u501" now from library, and reinstalled the app. The folder in library is not created new. I have the "dropbox_u501" in my trash, still. It was installed on the 20th of may. In which library would I have to put it back?

Also, I reinstalled the old regular dropbox app per drag and drop from my trash, but the library folder was not created again. The app though gives me the set up window, where one can Type in his account infos (email, password).

I suppose the dropbox_u501 folder came with the new install. Do I need it and in what library would I have to put it back? It is also not created again, when I unzip the dropbox-app.zip just once more and install the app again.

I don't have any folder named dropbox_uxxx. I don't now what is it. Dropbox creates a hidden folder ".dropbox" on all of my machines. Maybe, it's tiger only?

I found many threads about Tiger can't unzip some files, so i created a tar.gz for you. Check the link on my original post. But i can't make nothing about to fix it, if it's not working on Tiger.

I wrote several mails to dropbox, because i'm a python/ios/mac developer (dropbox created in python), and i can help to maintain the 10.5 version of dropbox, but i never received any answer.
 

eyoungren

macrumors Penryn
Original poster
Aug 31, 2011
28,793
26,883
I wrote several mails to dropbox, because i'm a python/ios/mac developer (dropbox created in python), and i can help to maintain the 10.5 version of dropbox, but i never received any answer.
Because the decision to drop Tiger/Leopard users (which includes PowerPC users) is not about API changes that benefit users on newer versions of the OS (as Dropbox says is the case).

It's about not wanting to dedicate resources (coders/developers) to maintain these users. Purely a financial decision based on market share. Dropbox is, after all, a business.
 

Czo

macrumors 6502
Dec 30, 2008
433
267
Debrecen, Hungary
Because the decision to drop Tiger/Leopard users (which includes PowerPC users) is not about API changes that benefit users on newer versions of the OS (as Dropbox says is the case).

It's about not wanting to dedicate resources (coders/developers) to maintain these users. Purely a financial decision based on market share. Dropbox is, after all, a business.

Yes, i know that, but i offer my help for free... If maintain compatibility is not to hard, i can fix it in my free time. I'm still using my powerbook to work (because it's the smallest Mac with integrated ethernet), so i'm using dropbox day to day.

I'm looking for a way to decrypt .pyc files. If i can convert it back to .py, it's help a lot, because i can make any fix on it, to make it work. Currently i can only patch libc functions (like the versionfaker works), so, if dropbox change anything on server side, i cant fix the original client.

Dropbox's public API is more than 10 times slower than original, but i wrote a small "client" (currently manually download selected folders, so it's one way, server to client). Maybe, if the official client fails forever, and i'm still using PowerPC, i can continue to working on my own solution.
 

eyoungren

macrumors Penryn
Original poster
Aug 31, 2011
28,793
26,883
Yes, i know that, but i offer my help for free... If maintain compatibility is not to hard, i can fix it in my free time. I'm still using my powerbook to work (because it's the smallest Mac with integrated ethernet), so i'm using dropbox day to day.
But that's my point. Even free help they will disregard because it does not fit with the business model.

I'm on your side and I support your attempt to work with them, I'm just saying that because of this I am not surprised that they have not responded to you.
 

Czo

macrumors 6502
Dec 30, 2008
433
267
Debrecen, Hungary
I found a way to prevent dropbox to create Dropbox/.dropbox_cache/dropbox-upgrade-x.x.x.tar.bz2. Now, i need to found a way, to prevent version checking, or to redirect version checking to my own server.
 

Cox Orange

macrumors 68000
Jan 1, 2010
1,814
241
I don't have any folder named dropbox_uxxx. I don't now what is it. Dropbox creates a hidden folder ".dropbox" on all of my machines. Maybe, it's tiger only?

I found many threads about Tiger can't unzip some files, so i created a tar.gz for you. Check the link on my original post. But i can't make nothing about to fix it, if it's not working on Tiger.

I wrote several mails to dropbox, because i'm a python/ios/mac developer (dropbox created in python), and i can help to maintain the 10.5 version of dropbox, but i never received any answer.
This was very nice of you!

The tar.gz doesn't work as well.

So far we have:
.zip with OS X unarchiver: error -1
.tar.gz OS X unarchiver: error -1
.zip with stufitexpander: invisible app-icon, only name visible, after drag to apps folder the right dropbox icon is visible. It can be launched to the point with the dropbox error message and the help button
.tar.gz stuffitexpander: now instead of a shadowy invisible icon, I get the one with a paper and an A and a pencil. Upon trying to launch it, it says "this seems to be broken or missing some files"


BTW. I found out where I got the u501 folder from. I went to library and there is a dropbox folder with a file called installerhelper, and I know that it was in the same folder. I now did try to put the u501 folder back in there and it said "installerhelper can't be changed - identify?", I click Identify and type in my password and the u501 folder is put back to where it was before. See picture (I suppose it came with your install, since the date says 20th of may and I guess you uploaded it that day / finished it).

EDIT: funny, I wanted to open the zip file again and now the OS X unarchiver does it the same way as stuffitexpander. As if it remembered something. Wonder why it had not been able to unzip it in the very beginning and why the tar.gz still can't be open...
 

Attachments

  • Bild 1.jpg
    Bild 1.jpg
    140.3 KB · Views: 175

Czo

macrumors 6502
Dec 30, 2008
433
267
Debrecen, Hungary
This was very nice of you!

The tar.gz doesn't work as well.

So far we have:
.zip with OS X unarchiver: error -1
.tar.gz OS X unarchiver: error -1
.zip with stufitexpander: invisible app-icon, only name visible, after drag to apps folder the right dropbox icon is visible. It can be launched to the point with the dropbox error message and the help button
.tar.gz stuffitexpander: now instead of a shadowy invisible icon, I get the one with a paper and an A and a pencil. Upon trying to launch it, it says "this seems to be broken or missing some files"


BTW. I found out where I got the u501 folder from. I went to library and there is a dropbox folder with a file called installerhelper, and I know that it was in the same folder. I now did try to put the u501 folder back in there and it said "installerhelper can't be changed - identify?", I click Identify and type in my password and the u501 folder is put back to where it was before. See picture (I suppose it came with your install, since the date says 20th of may and I guess you uploaded it that day / finished it).

EDIT: funny, I wanted to open the zip file again and now the OS X unarchiver does it the same way as stuffitexpander. As if it remembered something. Wonder why it had not been able to unzip it in the very beginning and why the tar.gz still can't be open...

Hmm hmm. It's seems something related only with Tiger. I have a plan to install 10.4 on my Sawtooth, but i don't have time, maybe 2-3 weeks later. I hope it's not too late for you. Sorry :(

The last working version in Tiger is 3.2.6?

Can you start it from terminal? If you put the Dropbox.app to /Applications, open a terminal, and try the following command

/Applications/Dropbox.app/Contents/MacOS/Dropbox
 

Cox Orange

macrumors 68000
Jan 1, 2010
1,814
241
Hmm hmm. It's seems something related only with Tiger. I have a plan to install 10.4 on my Sawtooth, but i don't have time, maybe 2-3 weeks later. I hope it's not too late for you. Sorry :(

The last working version in Tiger is 3.2.6?

Can you start it from terminal? If you put the Dropbox.app to /Applications, open a terminal, and try the following command

/Applications/Dropbox.app/Contents/MacOS/Dropbox
Wow! That would be great, I imagine that must be a lot of work and I don't expect from you to solve this for me, so even more: Thanks!
Time doesn't matter :)

The last version was 3.2.9 under Tiger.

Terminal gets me:
Last login: Wed May 27 22:12:14 on ttyp1
Welcome to Darwin!
noname:~ myusername$ /Applications/Dropbox.app/Contents/MacOS/Dropbox
/Applications/Dropbox.app/Contents/Resources/lib/python27.zip
/Applications/Dropbox.app/Contents/Resources/lib/python2.7
/Applications/Dropbox.app/Contents/Resources/lib/python2.7/plat-darwin
/Applications/Dropbox.app/Contents/Resources/lib/python2.7/plat-mac
/Applications/Dropbox.app/Contents/Resources/lib/python2.7/plat-mac/lib-scriptpackages
/Applications/Dropbox.app/Contents/Resources/lib/python2.7/lib-tk
/Applications/Dropbox.app/Contents/Resources/lib/python2.7/lib-old
/Applications/Dropbox.app/Contents/Resources/lib/python2.7/lib-dynload
(and then repeates the stuff several times until it gives me my OS X log in field again and after typing my pasword I get the dropbox error message with the help button again)
 
Last edited:

Czo

macrumors 6502
Dec 30, 2008
433
267
Debrecen, Hungary
Wow! That would be great, I imagine that must be a lot of work and I don't expect from you to solve this for me, so even more: Thanks!
Time doesn't matter :)

The last version was 3.2.9 under Tiger.

Terminal gets me:
(and then repeates the stuff several times until it gives me my OS X log in field again and after typing my pasword I get the dropbox error message with the help button again)

Can you upload a screenshot from the error message? In Console.app, can u see any lines with SystemVersion faker loaded?
 

Czo

macrumors 6502
Dec 30, 2008
433
267
Debrecen, Hungary
Wow! That would be great, I imagine that must be a lot of work and I don't expect from you to solve this for me, so even more: Thanks!
Time doesn't matter :)

The last version was 3.2.9 under Tiger.

Terminal gets me:
(and then repeates the stuff several times until it gives me my OS X log in field again and after typing my pasword I get the dropbox error message with the help button again)

Now i have a Sawtooth with 10.4.11.. Checked dropbox, and it's not working as easy like on Leopard. It's required more work. If i had more free time, i try to patch it on Tiger.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.