[ESS] Warning about Emacs/ESS administration and Windows 7 Weirdness
Daniel Nordlund
djnordlund at verizon.net
Wed Sep 1 23:47:45 CEST 2010
> -----Original Message-----
> From: ess-help-bounces at stat.math.ethz.ch [mailto:ess-help-
> bounces at stat.math.ethz.ch] On Behalf Of Paul Johnson
> Sent: Wednesday, September 01, 2010 12:44 PM
> To: ess-help
> Subject: [ESS] Warning about Emacs/ESS administration and Windows 7
> Weirdness
>
> I installed Emacs with ESS from Prof Goulet's site (thanks again!
> http://vgoulet.act.ulaval.ca/en/ressources/emacs/) on some machines
> and everything worked great. For me. I mean, not for other users on
> the machines. I had that same old problem that R was installed in
> c:\Program Files, but Emacs in C:\Program Files (x86) did not find it.
> Then I removed R and installed the 32bit version in C:\Program Files
> (x86), but Emacs/Ess could not find it either. I suppose my registry
> settings were so full of crap by that time it was a lost cause.
>
> But that's not such a bad problem. As the Windows admin, I can change
> the site-start.el file in Emacs to let it know where Rterm is. No big
> deal.
>
> But when another user logs in, WHAMO, site-start.el is changed back to
> the original thing. Rterm.exe not found. It was very maddening. I
> kept having to make the same change every time a new user came along.
>
> Later I learned that Win7 has a 'security' setup called UAR and if you
> edit a file in C:\Program Files (x86), even if you are the
> administrator, Win7 thinks you don't mean what you are doing, and so
> it transparently saves your changes in a different place inside your
> own user account. So the change you make works for you only, not for
> other users. The new version goes into a folder "VirtualStore" that
> is in a hidden part of the user folder. Any program the user runs
> that looks for C:\Program Files (x86)\GNU Emacs
> 23.7\site-lisp\site-start.el does not get what it asks for. Instead,
> it gets C:\Users\pauljohn\AppData\Local\VirtualStore\...
>
> I pokee and bashed this long enough to find a "workaround". If you
> use the admin power to copy the file to some "unprotected" directory,
> say Desktop, then you can revise it. Then manually rename the
> original, and then delete it, then copy the new one back there. It
> will ask for an admin password, but at least it works. While you do
> that, you can monitor the VirtualStore folder to make sure no changes
> are getting stuck there. (This is why I say this is a completely
> idiotic security regime. It won't let you edit files in c:\Program
> Files, but it will allow you to delete them and copy new ones in their
> places.)
>
> I have been wondering what should be the best way to avoid this silly
> system.
>
> If Emacs defaulted to install another folder, say C:\NonSuckyPrograms,
> don't think UAR would bother it. Any folder that does NOT have
> "Program Files" or "Windows" in it would be OK. I think.
>
> Here's a pretty good post about it. It says you can turn off a number
> of security features, but I don't want to do that for fear of actually
> allowing in an attacker.
>
> http://www.jondavis.net/techblog/post/2008/02/Beyond-Disabling-UAC-
> Disable-Virtual-Store.aspx
>
My solution is to install R and Emacs/ESS outside of Program Files, specifically
C:\R\R-2.11.1\
C:\GNU-Emacs-23.2\
I can then edit settings at will, without Windows 7 complaining and without worrying about paths containing spaces (which can sometimes be a problem).
Hope this is helpful,
Dan
Daniel Nordlund
Bothell, WA USA
More information about the ESS-help
mailing list