NOTE: GnuCash Portable has been updated to use GnuCash 2.2.2. A new post has been created for the next phase of development: https://portableapps.com/node/10633.
I have released a new implementation of Gnucash Portable, available at http://gnucashportable.sourceforge.net. The previous implementation by IllusionofDemise did not work consistently for me and the source site has recently gone down for several weeks so I decided to rewrite it from scratch using the latest launcher for Firefox Portable as a base. All features of Gnucash 2.2.1 are supported (as far as I know) including aqbanking (if you have activeperl installed) for online banking support. I personally use Gnucash for my finances so I will definitely be active on this project in order to keep it up to date.
One thing I was not too concerned about when creating this is size, since USB drive capacities are ever increasing and prices ever decreasing. The install is just over 200MB. If there is sufficient interest in reducing this I will play with compressing the Gnucash binaries.
11/30/2007 - 0.1.5
- Fixed bug where local temp files were not being deleted after running locally.
- Added PerlPath to ini options to specify the path to the Perl binaries, needed for
online banking support. By default the path is set to 'C:\Perl\bin'.
- Reworked how PATH environment variable is used. Existing path is no longer prepended
to the Gnucash binary paths. Instead the path is overwritten with the Gnucash binary
paths and the Perl binary path. Use of the PerlPath ini option is necessary to
enable online banking support if Perl binaries are not located at C:\Perl\bin.
This fixes the following two bugs:
- Fixed bug with PATH environment variable being set to null when the existing path
contained quotes. This was causing Gnucash to fail to execute on affected systems.
- Fixed bug with PATH environment variable being truncated when the existing path is
near the maximum PATH size (1024/2048 bytes).
- Added localization strings to launcher. English only for now.
- Cosmetic changes to launcher source to reflect changes in latest PAF sources
(modelled after Firefox Portable 2.0.0.10).
11/26/2007 - 0.1.4
- Fixed bug with Win2k liborbit fix. Non-win2k OS will now no longer use the older
liborbit files.
- Changed TMP directory to PROFILEDIRECTORY\Temp. This directory is now removed on
exit.
- Changed launcher to wait for gconfd-2.exe to exit before cleaning up since it
hangs around after gnucash-bin.exe exits and has temp files locked.
- Added environment variables check to debug log
- Updated findprocDLL to newest version. Old version was used in previous binaries
and would not properly detect running processes due to different return values.
- Updated App\AppInfo\appinfo.ini to version 0.9.8.
- Changed installer and updater to use App\AppInfo\appicon.ico as icon. Removed
installer.ico from source.
11/15/2007 - 0.1.3
- Added registry entry handling for aqbanking & gwenhywfar. These are HKLM keys,
so they require admin access. Online banking wizard should work correctly now if
you have admin rights. If you do not have admin rights Gnucash will run fine,
only some online banking features will not work.
- Changed Wait & Admin warnings to mention online banking dependencies.
- Added version check to "intelligent start". Fixes are re-applied if version has
changed since last run.
- Combined GnucashPortableSource & GnucashSource folders to a single Source folder.
- Changed program icon to one with 16, 32 & 48 sizes.
- Fixed typos in Readme.txt.
- Changed installer source to look in separate folders under "Files" for
PortableApp and App files in preparation for a separate updater.
- Added "updater" source which is basically an installer that doesn't include the
App files. This allows distribution of a 360KB update rather than a 39MB full
install when a new PAF release does not contain an updated version of the App.
- Added help.html and related files.
11/12/2007 - 0.1.2
- Added launcher status logging. On by default during beta. Log saved to EXE
directory as LauncherLog.txt
11/9/2007 - 0.1.1
- Added option to continue running when Gnucash registry entries are discovered and
user has no admin rights to disable them.
- UPXGnc.cmd script added in source directory. When complete this script will
compress all exe and dll files in the Gnucash binary directories. Currently
causes crashes as not all files have been found that don't work correctly when
compressed. This script does not run automatically, and requires an external
download of UPX.exe.
11/9/2007 - 0.1
- First beta release.
- Utilized Gnucash 2.2.1
Rayven01,
Thanks for having a go, but I can't get it to run on a computer that has an existing non-portable version concurrently installed where the user doesn't have admin rights.
The following error message appears:
"A previous install of the non-portable GNUCash has been detected... blah blah"
Try it out yourself - you will see what I mean. Seems to be fine on a machine where the user has admin rights. Probably a fatal problem for any of us that want to run portable GNUcash on our work machines.
BTW, I can successfully install and run a non-portable version on this machine, as well as installing and running both IllusionofDemise's latest beta and ReneL's multilingual beta. Yours throws up the error message.
Close. Give it a tweak. Like you, I like GNUCash. As I have said to IllusionofDemise, I am sure that there will be strong demand for a robust portable solution.
Kim
Unfortunately this is a limitation of the Gnucash implementation. A non-portable install of Gnucash will install registry entries in HKLM for path information, etc. If those entries exist, it will use them over any environment variable settings. The reason the beta from IllusionofDemise works is because it doesn't check for these entries, it just starts up and begins using those paths. Data will most likely not be saved on the portable device, unless you installed the non-portable version on the portable drive. Even then it may not be saved in the data directory of the portable version. In practice I suppose this may not matter too much since you save your financial data file wherever you want, which means the only data you may be missing is program preferences etc.
My version checks for these entries and tries to handle them gracefully if you have admin rights, otherwise it aborts so that data does not get saved to the local machine. I could change that behavior so that it only warns you and continues to run anyway...
Is there a reason you would want to keep the non-portable version installed if the portable version works without it?
Edit:
New version available that allows you to continue running with a warning that the registry paths may be used.
formerly rayven01
Rayven01,
I have not exhaustively checked the new beta 1.1 version, so cannot comment on any compression related bugs. Thanks for fixing the issue I raised about conflicts due to existing non-portable installs. It works fine. I believe that the most conservative option (ie: let the portable program run - but warn about potential conflicts on start-up) is the correct choice. The user should ultimately decide whether to run & risk losing some preference choices - not the programmer.
Anyway, you have done good work. Thanks again.
Kim.
PS: I hope you maintain your interest in Portable Gnucash & keep those versions coming.
Kim
The compression script (UPXGnc.cmd) has to be run manually after install, so there should be no bugs unless you run it. It also requires that you enter a path to an externally downloaded UPX.exe so it won't even run by accident.
formerly rayven01
i just began to run 1.1 beta portable gnucash (the latest) then Norton popped up, reporting that GnuCash portable was trying to communicate via the internet. That has never happened before when i fired up a PA. Should this be like that?
Ant
If you have perl installed Gnucash will automatically attempt to download current stock quotes from the internet.
formerly rayven01
to my knowledge i do not have perl installed. but even if i DID have perl installed, would that mean i had to know that i was going to download stock quotes? I might not want to do that, anyway. And I am in a place where internet comes in by the byte not by the kilobyte. I can`t afford to download stock quotes, because it takes forever, nor can i afford to buy any. and to be honest, i woud like to have choices about my internet behaviour.
Actually I was mistaken, it doesn't download quotes at startup. It just does a check to see if aqbanking (the online banking library) works and can connect to the internet (if it doesn't, online banking features are grayed out). You might ask on the Gnucash mailing list about the specific behavior, as I'm not a Gnucash developer myself.
formerly rayven01
I can run the app directly from App/bin and it works, but doesnt run from the paf exe. Running it directly i get the tips pop up and the dialog to create/import/tutorial comes up.
I dont have any accounts set up if that has anything to do with it.
I assume by "run directly" you mean running GnucashPortable\App\Gnucash\bin\gnucash.bat? And by paf exe you mean GnucashPortable\GnucashPortable.exe? When you run the latter does it show the splash screen (should say Gnucash Portable), or nothing at all? No message boxes of any kind indicating errors/warnings? Anything special about your setup? (non-portable gnucash already installed? Admin or no admin rights? Other portable apps installed and working correctly on the same drive?) The more info I have the better the chance to diagnose the problem.
Having no accounts should be fine. I tested the release with and without a data file.
You can also contact me via sourceforge: http://sourceforge.net/users/rayven01/.
formerly rayven01
I get the splash screen, then nothing. Watching the process in 'Sysinternals Process Explorer' I see the process start, turn red and then disappear. No errors/warnings.
The screen does appear to flash as the process ends, but i can find nothing to let me know what is going on.
The previous beta worked. I installed this over the last one with problems as stated. So I deleted and reinstalled. Same problems.
I have admin rights and run many other portable apps. At a bit of a loss on this one. Is there anything i can do that will give you more information?
Ok, the comment that the previous beta worked tells me that it may be a problem with the necessary fixes not being in place. Try copying the example GnucashPortable.ini to the GnucashPortable directory, and change "DISABLEINTELLIGENTSTART" to true for at least one run. It's possible if you did some profile copying that the fixes did not get applied correctly, even after delete/reinstall.
I may remove the feature to skip the fixes completely since there's a lot of potential for problems upon reinstall/update and the fixes really don't take much time anyway. Maybe if I just add a version check as well, to automatically re-do the fixes after an update...
formerly rayven01
I ran gnucash.bat and it worked. If i run gnucash-bin.exe (which from your log it looks like you run) I get the following error:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Unable To Locate Component
This application has failed to start because libgncmod-engine.dll was not found. re-installing the application may fix this problem.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
I can see this dll in G:\PortableApps\GnucashPortable\App\Gnucash\lib\gnucash directory, so is it a path issue (which the .bat file seems to set up but isnt called)?
The PAF launcher is basically a replacement for the gnucash.bat file, so it isn't used. The same environment variables that are set in gnucash.bat are set by the launcher before it calls gnucash-bin.exe. If you want to email your LauncherLog.txt file to rayven01 at users.sourceforge.net I'll take a look and see if I can figure anything out from that.
formerly rayven01
Beta 1.5 fixed this problem.
formerly rayven01
Looks like you've hit the big times! Lifehacker has early praise for Gnucash Portable.
You need to remove the link from your signature. Add it as your homepage if you wish.
"If you're not part of the solution, you're part of the precipitate."
Lifehacker is repeating/linking to a story on another website...the originator of the article (downloadsquad.com).
http://www.downloadsquad.com/2007/11/11/portable-version-of-gnucash-beta...
Cancer Survivors -- Remember the fight, celebrate the victory!
Help control the rugrat population -- have yourself spayed or neutered!
I'll take a look to make sure it's all properly PAFed and the launcher is good.
Edit:
;Based on launchers by John T. Haller of PortableApps.com
needs to be changed to;and IllusionofDemise of SageMedia.net
;Copyright 2004-2007 John T. Haller of PortableApps.com
;Copyright 2007 IllusionofDemise of SageMedia.net
VIAddVersionKey LegalCopyright "Shawn Faucher"
should beVIAddVersionKey LegalCopyright "PortableApps.com and contributors"
"If you're not part of the solution, you're part of the precipitate."
sorry ryan, I am a bit late; you already looked at it.
still: i can reproduce the attempt to connect to the internet. the files that do that are called gconfd-2.exe and gnucash-bin.exe
thanks a lot; i think this is a great program!
formerly rayven01
Also, use the icon in Gnucash\share\gnucash\pixmaps instead, as it's much nicer, and use the GIMP or IcoFX or whatever you prefer to make it have a 16, 24, 32, and 48 size icon or both 32 and 256 bit formats.
I'll look for a high-res logo for the official splash if that ever comes.
But yeh, it's workin' good for me. I hope to see this one added here, good job.
I already deleted the download so I can't got look for myself, but don't forget to add in an \Other\Source\readme.txt file if you don't have one. I'm guilty of this too as I REALLY hate typing.
This is "trivial" like the help.html file listed above.
Cancer Survivors -- Remember the fight, celebrate the victory!
Help control the rugrat population -- have yourself spayed or neutered!
Beta 1.3 has been released. This release is in the form of an update, which does not contain the Gnucash files to reduce size since they haven't changed. It must be installed over a previous full install release.
formerly rayven01
I have a slow internet connection, thanks!
Edit: Good, it looks good. By the way, ZGitRDun8705 found this page after I figured out who made the icon where Hylke Bons, one of the Tango icon artists sent the GNUCash logo to the developers, you can download more higher res' for the splash screen there. Be sure to download the tar.gz and extract with something like 7-Zip.
Fixed two bugs (liborbit fix and findprocdll), changed TMP folder location/behavior and made a few cosmetic changes.
formerly rayven01
This is in line with some comments by others. When I run GNUCash portable on my home machines (one a dual core laptop, the other a 3.2GHz Pentium 4 desktop) where I am "the administrator" it runs fine.
I'm trying it now at work where I just have user status and the Flashscreen comes up, then nothing. Going into the Task Manager I see gconfd-2.exe (2 instances), gnucash-bin.exe, and GnuCashPortable.exe loaded but "no action."
I'll try later re-logging into my office machine as the administrator and will tell you if anything changed.
Paul Farber
Try the 1.5 update, it should fix the problem. Your path on that system probably contains quotes or is near the maximum size.
formerly rayven01
I tried the 1.5 update same result, i.e. splash screen appeared, programs showed up in the running processes but no "active" GNUCashPortable. I suspect that GNUCash portable may be trying to access something that our network security "doesn't like."
We run a very secure network and some programs do not play well together.
Is GNUCashPortable attempting to access a trusted zone or gain internet access without operator permission?
Gnucash does sometimes hit the internet without asking permission during startup, so if you have restrictions against that it is most likely the root of your problem. I did some hunting on the subject in the Gnucash bug reports and it appears to be possibly caused by a bug in liborbit where communication that is supposed to be directed to localhost is instead pointed to seemingly random IP addresses. Unfortunately that's not something I can fix since it's not caused by the launcher, but the orbit folks are working on a fix and I expect Gnucash 2.2.2 should have it incorporated.
formerly rayven01
Several bugs fixed, most involving the PATH environment variable. For those that had trouble with the launcher coming up but Gnucash failing to start, this should fix the problem.
formerly rayven01
I installed Beta 1.5 and have been getting to know GNUCash. As long as I keep it away from my office machine where our firewalls prevent it from running its fine. One slight problem I have encountered is when moving from one machine to another the saved file has the full path saved (i.e. E:\PortableApps\...).
If the machine I've moved to assigns a different drive letter to PortableApps then I have to browse to find my data files since GNUCash is still trying to find the old drive letter.
Not a big bug, merely a gnat.
Paulf
Good catch. Gnat will be squashed in the next version. It will automatically replace the old profile path with the current one in the appropriate settings file on startup. This will also fix a related bug where if you moved your profile from the default location and changed the ProfileDirectory ini setting to match, the same thing would happen.
formerly rayven01
I'm taking the lack of posts recently to mean that most of the bugs have been smashed (I still use the program daily on 4 different computers with no issues). Pending any new bug reports in the next day or two the next version with the fix to the login account will be RC 1.
formerly rayven01
Rayven01,
I think you are on the money. It appears to be very stable. I also use it daily on home and work computers since you released it, and have no problems at all. Are you able to update to the new stable release 2.2.2?
Kim
Absolutely; I hadn't realized they'd updated it yet. Looks like they patched liborbit to possibly fix the 'call home' problem. Guess we'll be having another beta or two to test that out...
formerly rayven01