Portable Apps version of SOFA statistics?

135 views
Skip to first unread message

jdeisenberg

unread,
Jan 17, 2014, 8:52:42 AM1/17/14
to sofasta...@googlegroups.com
I was wondering how difficult it would be to make a PortableApps version of SOFA (format described at http://portableapps.com/development/portableapps.com_format), or at least have some way of installing SOFA to a USB drive. From the FAQ about Windows 7, I'm guessing that SOFA does some stuff with the registry.

Reason I'm asking: I'm teaching research methods in a classroom where I don't have admin privileges to the machines, so I can't install SOFA on them.

Grant Paton-Simpson

unread,
Jan 17, 2014, 1:51:16 PM1/17/14
to sofasta...@googlegroups.com
Hi,

SOFA is cross platform and I don't use registry for anything important (to the best of my recollection). The installer does do one small piece of magic though - it makes sure msvcr71.dll is installed (apparently so sqlite can be guaranteed to work - see http://osdir.com/ml/python.db.pysqlite.user/2005-05/msg00040.html):
; May be able to do without this but would require testing on many different machines depending on what had already been installed on them
!insertmacro InstallLib REGDLL $ALREADY_INSTALLED REBOOT_NOTPROTECTED "G:\3 SOFA dev\sofalibs\msvcr71.dll" $SYSDIR\msvcr71.dll $SYSDIR

All you really need to run SOFA is a folder (e.g. "sofa_app") in which sofastats.exe and all the other standard files and subfolders have been placed. You could just install SOFA and then copy the sofastats folder. sofastats.exe is the file that actually runs SOFA on Windows.

Note - don't put the app in the same folder as SOFA is expecting to put its user data i.e. C:\Users\username\sofastats.

One left-field question - why not have Ubuntu + SOFA on the USB drive. How small are the drives? Then people can boot in there and have access to whatever else you want ready for them.

But PortableApps might be a better approach - I have no experience of it.

Or you might not need anything more than a usb with the sofastats folder on it. Try that first in case it is dead easy.

Please let us know how it goes.

All the best,
Grant


On 18/01/14 02:52, jdeisenberg wrote:
I was wondering how difficult it would be to make a PortableApps version of SOFA (format described at http://portableapps.com/development/portableapps.com_format), or at least have some way of installing SOFA to a USB drive. From the FAQ about Windows 7, I'm guessing that SOFA does some stuff with the registry.

Reason I'm asking: I'm teaching research methods in a classroom where I don't have admin privileges to the machines, so I can't install SOFA on them.

--
 
---
You received this message because you are subscribed to the Google Groups "sofastatistics" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sofastatistic...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

jdeisenberg

unread,
Jan 17, 2014, 4:32:16 PM1/17/14
to sofasta...@googlegroups.com


On Friday, January 17, 2014 1:51:16 PM UTC-5, Grant Paton-Simpson wrote:
Hi,

SOFA is cross platform and I don't use registry for anything important (to the best of my recollection). The installer does do one small piece of magic though - it makes sure msvcr71.dll is installed (apparently so sqlite can be guaranteed to work - see http://osdir.com/ml/python.db.pysqlite.user/2005-05/msg00040.html):
; May be able to do without this but would require testing on many different machines depending on what had already been installed on them
!insertmacro InstallLib REGDLL $ALREADY_INSTALLED REBOOT_NOTPROTECTED "G:\3 SOFA dev\sofalibs\msvcr71.dll" $SYSDIR\msvcr71.dll $SYSDIR

All you really need to run SOFA is a folder (e.g. "sofa_app") in which sofastats.exe and all the other standard files and subfolders have been placed. You could just install SOFA and then copy the sofastats folder. sofastats.exe is the file that actually runs SOFA on Windows.

Note - don't put the app in the same folder as SOFA is expecting to put its user data i.e. C:\Users\username\sofastats.

One left-field question - why not have Ubuntu + SOFA on the USB drive. How small are the drives? Then people can boot in there and have access to whatever else you want ready for them.

Two reasons: 1) the machines are set up so that students can't boot from an external device -- otherwise, knowledgeable and malicious students could boot something like System Rescue CD and change passwords, or they could install software from a Windows-bootable device.  2) Awful truth: many students in the class don't know how to copy-drag a formula in Excel; quite a few are unaware of how to do an average in Excel. Confronting them with "boot this new operating system (what's *that*?) from this external device and deal with the GTK file open menu" might be a bit much for them.


But PortableApps might be a better approach - I have no experience of it.

They have a lot of good stuff available. See http://portableapps.com/apps; it's what I recommend for using LibreOffice, as you don't need to be an administrator to install it to your USB drive.

Or you might not need anything more than a usb with the sofastats folder on it. Try that first in case it is dead easy.

That is what I will do when I get to the school on Monday; thanks.

Alan Jones

unread,
Jan 20, 2014, 1:35:55 AM1/20/14
to sofasta...@googlegroups.com
I might jump in and say I also think a Portable Apps version would be a very nice addition.  Some authors adjust the development so that is part of the default process or comes along smoothly.  I think having it on Portable Apps increases the visibility of the project.  It also makes some people feel better that it is not installing something that is going to install junk all over their computer.  Also for those of us that are mobile or want to share info it makes it easier to put on Network share or USB drive.


Grant Paton-Simpson

unread,
Jan 20, 2014, 11:19:47 PM1/20/14
to sofasta...@googlegroups.com
Hi Alan,

I think you're probably right. If someone wants to make a portable app
version I am more than happy to consider changes to the SOFA setup to
support it. I may even be able to make it a standard part of the release
cycle if it proves popular.

All the best,
Grant

jdeisenberg

unread,
Jan 21, 2014, 2:09:42 PM1/21/14
to sofasta...@googlegroups.com
Good news, everyone! I dragged the sofastats folder over to a USB drive and then ran it on a machine without SOFA. Worked great.

Grant Paton-Simpson

unread,
Jan 21, 2014, 2:41:45 PM1/21/14
to sofasta...@googlegroups.com
Very cool - but that would be Windows machines only I would guess?

J David Eisenberg

unread,
Jan 21, 2014, 2:47:21 PM1/21/14
to sofasta...@googlegroups.com
Yes (which was my main concern); don't have a Mac to test on.

Gerd-Ulrich Meyer

unread,
Jan 21, 2014, 3:11:32 PM1/21/14
to sofasta...@googlegroups.com
Hallo,

i tracked this discussion with "half-an-eye", but now things get
interesting for me though i do not have a Mac or a Linux. :-)
As the (Windows-) ZIP-file contains everything sofastats needs to run
and serves more or less as a "transport vehicle" for the files it should
run "out-of-the-box" from an USB-Stick ( I admit i tried already to copy
the whole sofastats directory from my PC to a different PC and it works).
But, and that is a question, only you, Grant can answer, what do the
setups for Mac and Linux contain? Do they relay on system-libraries,
that have to exist on a "normally" set up Mac resp. LInux? Or do they
also contain every file sofastats needs to run? If so, it would be, in
my opinion, only a question of executing the "main" executable.

I don't know if these thoughts are helpful.

Greetings

Gerd-Ulrich Meyer

Grant Paton-Simpson

unread,
Jan 21, 2014, 9:59:58 PM1/21/14
to sofasta...@googlegroups.com
Hi Gerd-Ulrich,

The Mac app bundle should work anywhere as my packager bakes everything
it needs in terms of libraries etc inside a SOFA Statistics binary. My
own SOFA-specific scripts are in the Resources subfolder e.g. start.py,
anova.py etc.

As for Linux, I follow the Linux approach of using shared libraries
which, unfortunately, makes this more challenging.

All the best,
Grant

Gerd-Ulrich Meyer

unread,
Jan 22, 2014, 2:15:01 PM1/22/14
to sofasta...@googlegroups.com
If nobody minds, i'll give it a try...what are virtual machines for if not for those kind of tests? :-)
But as i'm far away from being a Linux-guru *grin*, maybe someone could tell me which installation file i should use for my OpenSuse-Installaion in my virtual machine? I think i need the "Non-Ubuntu/Debian Linux Installation"-version?! Am i right?

Greetings

Gerd-Ulrich Meyer

Grant Paton-Simpson

unread,
Jan 23, 2014, 1:41:18 AM1/23/14
to sofasta...@googlegroups.com
Hi Gerd-Ulrich,

Check out: http://www.sofastatistics.com/wiki/doku.php?id=help:linux_installation

I haven't tested it for a while but please let me know how you get on.

All the best,
Grant

Gerd-Ulrich Meyer

unread,
Jan 23, 2014, 7:16:30 AM1/23/14
to sofasta...@googlegroups.com

That looks good (though i will extensively need my english dictionary :-D ). But don't get impatient-the next 3 or 4 evenings i have several different things to do. Although i will report my test results-hope they will help to improve the use of sofastatistics.
Greetings
Gerd-Ulrich Meyer

Grant Paton-Simpson

unread,
Jan 23, 2014, 1:30:01 PM1/23/14
to sofasta...@googlegroups.com
Thanks - your work is appreciated.

Gerd-Ulrich Meyer

unread,
Feb 9, 2014, 4:17:37 PM2/9/14
to sofasta...@googlegroups.com
Hallo,

took a bit longer than i thought, sorry.

After thinking and learning a lot about Linux, i just tried to install Sofastats "out-of-the-box" without installing python or other modules. Reason for this is that i don't think that packages like python are installed on a standard pc.

I have read your installation-guide but regarding to a "self-running" Sofastats (like i use and like it under Windows) i think that this might be too complex for the "normal-user" (maybe this opinion is based on my minimalistic linux-knowledge).

I attach a screenshot showing my first try to use Sofastats under my virtual OpenSuse. Maybe it helps.

As soon as i find some time again i will proceed with this topic.

Greetings

Gerd-Ulrich Meyer
Sofastats_Portable-Version-under-Linux.jpg

Grant Paton-Simpson

unread,
Feb 10, 2014, 2:28:11 AM2/10/14
to sofasta...@googlegroups.com
Hi Gerd-Ulrich,

Yep - that was bad coding on my part. The attached will give the actual error required. Basically you need to include wxversion in your installation.

All the best,
Grant
setup.py
Reply all
Reply to author
Forward
0 new messages