2017년 1월 7일 토요일

Would like to deploy to 50+ PC's for Lab but need a .msi not .exe is this availa


We would like to be able to deploy this MIT App Inverter on to 24+ Dell Desktop PC's for our Lab at our School K-12 Non for profit Christian School.    is this possiable.  all we saw was the .exe  

--
This thread leads to a few deployment documents ...

Be aware that development happens over the Web to MIT's site,
and the Companion and emulator are for testing.

More Companion and Emulator options can be found in this FAQ ...

-- 
I've just finished deploying Appinventor in UCC Computer Science department. We have an outreach group which provides programming tuition for school children at weekends. As most of these kids would not have their own devices, and we don't have enough spares to provide one each, we wanted to use the emulator.
I have a lot of experience of installing software, we use a wide range of stuff in the department, some of it experimental, but it still took a few days of digging for information and experimenting with different setups, to get this working without admin privileges.

I'll set out how I got it working, it might be helpful to you and others. I haven't found or fixed all the bugs (and wouldn't have time to do so), but I've put in place a set of workarounds that make it usable in a classroom situation.

First thing to realise is that this is beta software, it's not really ready for general distribution, so you have to expect that it doesn't meet the standards we expect of a finished product.

Btw, I installed on Windows 7 Enterprise, but there's a good chance this will work with other versions.

It might seem obvious that Chrome is the browser to use, but Firefox works much better with Appinventor, possibly because it's less secure. I haven't bothered to work out exactly why, Chrome could probably be fixed, but I had a tight deadline, so what I went with what works.

You can create your own .msi, but I just went with the .exe, I only had 31 PCs to setup, so it was as easy to click a few buttons on each one.
I have my admin account setup to run a batch file (as administrator) automatically on login, and I  put the following lines into that batch file to streamline/partly automate the setup:

REM *************AppInventor April 2016 Lab 113***************
z:∖113∖MIT_App_Inventor_Tools_2.3.0_win_setup.exe /s
icacls "C:∖Program Files (x86)∖AppInventor" /t /c /grant cs-domain∖AppInventor:(OI)(CI)(X,RD,RA,REA,WD,AD,WEA,WA,D,RC,DC)
mkdir c:∖.appinventor
xcopy /s /y z:\113∖.appinventor c:∖.appinventor
icacls C:∖.appinventor /t /c /grant cs-domain∖AppInventor:(OI)(CI)(X,RD,RA,REA,WD,AD,WEA,WA,D,RC,DC)
cd "C:\Program Files (x86)\Mozilla Firefox\"
pause
shutdown /s /y /t 10

So that runs the App_Inventor_Tools from my network home drive. the "/s" didn't seem to work, but no matter, it's just a few mouse clicks to runt he installer. I'd fix the silent install or make an msi if I had to run it out to a larger lab. 

The software installs in "Program Files", which is fine, but a bit of poor programming means that the users have to write to that directory. Ideally the users would write everything to their home directory, by default. 
I'm running an Active Directory domain called cs-domain, and I've created a group for the kids and instructors, called Appinventor. If more people need to be added, this can be done easily at the server, without going round the lab again. I use the icacls command to give pretty loose permissions to the Appinventor folder. You can look up the icacls command, but essentially I'm giving write permissions to the AD Appinventor group, and make it inheritable, so I don't have to spend time figuring out exactly which files/folders they need to write to.

When you run the emulator first time, as administrator, it creates a HIDDEN folder c:\.appinventor, and again, the users have to be able to write to that. In a finished software product, all user writes would go to their home directory by default, and you certainly wouldn't scatter user-writeable folders around the root of C: etc.. but anyway, This is where the emulator files are hidden. Even though you have downloaded the latest installer, the first time you run the emulator it will want to update these files. When you've done that once, you can copy that folder, c:\.appinventor up to a server share (in my case, my Z: drive) and use the batch file to copy it back for each subsequent installation. So the "mkdir" "xcopy" and the second "icacls" lines create that hidden folder, copy the files back from the server, and setup permissions for ordinary users.

Then I run Firefox (optional), so I can do a quick check on each machine that everything works ok, just to be sure, to be sure. that saves me having to come in at the weekend.
If all is ok (31 of 31 machines were fine) you can hit any key to close the batch file command window and shutdown the PC.

It's not neat or pretty, but it gets the beta software working the way I want it, with minimal messing around. If you adapt this, you should have your lab setup in an hour or two.
We're giving the kids write access to a couple of sets of folders. They could potentially do a bit of damage, but it's nowhere near as bad as giving them local admin privileges. I can live with that level of risk.

When the classes are finished, I'll take the kids out of the AD Appinventor group, thereby rescinding the extra permissions.

Hope that helps,
Martin.

-- 

댓글 없음:

댓글 쓰기