emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* local.mk and SUDO
@ 2012-04-27 12:35 Martyn Jago
  2012-04-27 18:11 ` Achim Gratz
  0 siblings, 1 reply; 6+ messages in thread
From: Martyn Jago @ 2012-04-27 12:35 UTC (permalink / raw)
  To: emacs-orgmode


I have a local.mk set up with my particular settings, and with SUDO
set to blank, as per the comment in default.mk:

,----[default.mk]
| # How to obtain administrative privileges
| # SUDO	= 	# leave blank if you don't need this
| SUDO	= sudo
`----

...since my org-mode files location doesn't require supervisor access
(typically I have 4 org-mode installs, and 4 Emacs versions for testing,
although currently I'm just running my working system).

However, when I've just gone to run `make up2' (awesome command by the
way), I get the error:

--8<---------------cut here---------------start------------->8---
> make up2
git remote update
Fetching origin
git pull
Updating abd49c8..0233eb9
error: Your local changes to the following files would be overwritten by merge:
	contrib/lisp/org-export.el
	lisp/ob-R.el
	lisp/ob-python.el
	lisp/ob.el
	lisp/org-agenda.el
	lisp/org-beamer.el
	lisp/org-bibtex.el
	lisp/org-capture.el
	lisp/org-clock.el
	lisp/org-colview-xemacs.el
	lisp/org-colview.el
	lisp/org-ctags.el
	lisp/org-exp.el
	lisp/org-faces.el
	lisp/org-footnote.el
	lisp/org-gnus.el
	lisp/org-latex.el
	lisp/org-mouse.el
	lisp/org-odt.el
	lisp/org-publish.el
	lisp/org-table.el
	lisp/org.el
--8<---------------cut here---------------end--------------->8---

After investigation it turns out the problem is a permissions issue:

--8<---------------cut here---------------start------------->8---
diff --git a/lisp/org-mobile.el b/lisp/org-mobile.el
old mode 100644
new mode 100755
--8<---------------cut here---------------end--------------->8---

After further investigation, I have modified git config to overide the
core.filemode setting which works for me:

,----
| core.fileMode
|        If false, the executable bit differences between the index and the
|        working copy are ignored; useful on broken filesystems like FAT.
|        See git-update-index(1). True by default.
`----

--8<---------------cut here---------------start------------->8---
git config core.filemode false
--8<---------------cut here---------------end--------------->8---


So really - this is just a heads-up of my experience setting SUDO to
blank, but it would be nice to know if this is expected behavior? If it
turns out that it is, then perhaps I can supply a documentation patch
(an extra comment in default.mk).

HTH

Best, Martyn

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: local.mk and SUDO
  2012-04-27 12:35 local.mk and SUDO Martyn Jago
@ 2012-04-27 18:11 ` Achim Gratz
  2012-04-27 20:02   ` Martyn Jago
  0 siblings, 1 reply; 6+ messages in thread
From: Achim Gratz @ 2012-04-27 18:11 UTC (permalink / raw)
  To: emacs-orgmode

Martyn Jago writes:
> However, when I've just gone to run `make up2' (awesome command by the
> way), I get the error:
[...]
> diff --git a/lisp/org-mobile.el b/lisp/org-mobile.el
> old mode 100644
> new mode 100755

That's a well-known problem with anything that expects POSIX file
semantics on Windows... and Git does rely very heavily on it.

> After further investigation, I have modified git config to overide the
> core.filemode setting which works for me:
[...]
> git config core.filemode false

You should preferrably set it before any commits to that repo (or rather
in global config).  Otherwise you could use Git from Cygwin (which
emulates POSIX on anything but FAT by default), but then you must never
use any native Git on that repo (and be sure that you never access it
via a filesystem that doesn't have ACL or that is mounted with "noacl"
in Cygwin).  This particular pitfall is extensively documented on the
Git side.

> So really - this is just a heads-up of my experience setting SUDO to
> blank, but it would be nice to know if this is expected behavior? If it
> turns out that it is, then perhaps I can supply a documentation patch
> (an extra comment in default.mk).

I'm not sure that orgmode should document limitations of some other
software that are caused be the underlying OS...


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Factory and User Sound Singles for Waldorf Blofeld:
http://Synth.Stromeko.net/Downloads.html#WaldorfSounds

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: local.mk and SUDO
  2012-04-27 18:11 ` Achim Gratz
@ 2012-04-27 20:02   ` Martyn Jago
  2012-04-27 22:57     ` Achim Gratz
  0 siblings, 1 reply; 6+ messages in thread
From: Martyn Jago @ 2012-04-27 20:02 UTC (permalink / raw)
  To: emacs-orgmode

Hi Achim

Achim Gratz <Stromeko@nexgo.de> writes:

> Martyn Jago writes:
>> However, when I've just gone to run `make up2' (awesome command by the
>> way), I get the error:
> [...]
>> diff --git a/lisp/org-mobile.el b/lisp/org-mobile.el
>> old mode 100644
>> new mode 100755
>
> That's a well-known problem with anything that expects POSIX file
> semantics on Windows... and Git does rely very heavily on it.
>

I'm not on Windows, I'm on Mac OS X which usually handles Git nicely - I
use it all the time. 

Best, Martyn

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: local.mk and SUDO
  2012-04-27 20:02   ` Martyn Jago
@ 2012-04-27 22:57     ` Achim Gratz
  2012-04-29 12:59       ` Martyn Jago
  0 siblings, 1 reply; 6+ messages in thread
From: Achim Gratz @ 2012-04-27 22:57 UTC (permalink / raw)
  To: emacs-orgmode

Martyn Jago writes:
>>> diff --git a/lisp/org-mobile.el b/lisp/org-mobile.el
>>> old mode 100644
>>> new mode 100755
>>
>> That's a well-known problem with anything that expects POSIX file
>> semantics on Windows... and Git does rely very heavily on it.
>>
>
> I'm not on Windows, I'm on Mac OS X which usually handles Git nicely - I
> use it all the time. 

Then you yourself must most likely have changed the mode of those files
to "executable".  There is nothing in the build system that even
attempts to change modes.


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

SD adaptation for Waldorf Blofeld V1.15B11:
http://Synth.Stromeko.net/Downloads.html#WaldorfSDada

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: local.mk and SUDO
  2012-04-27 22:57     ` Achim Gratz
@ 2012-04-29 12:59       ` Martyn Jago
  2012-04-29 21:57         ` Achim Gratz
  0 siblings, 1 reply; 6+ messages in thread
From: Martyn Jago @ 2012-04-29 12:59 UTC (permalink / raw)
  To: emacs-orgmode

Achim Gratz <Stromeko@nexgo.de> writes:

> Martyn Jago writes:
>>>> diff --git a/lisp/org-mobile.el b/lisp/org-mobile.el
>>>> old mode 100644
>>>> new mode 100755

[...]

> Then you yourself must most likely have changed the mode of those files
> to "executable".  There is nothing in the build system that even
> attempts to change modes.

Hi Achim

Since the new makefile uses the `install' command as opposed to `cp' to
install files, the following is noted in man install:

,----[*Man install*]
| -m      Specify an alternate mode.  The default mode is set to rwxr-xr-x
|         (0755).  The specified mode may be either an octal or symbolic value;
|         see chmod(1) for a description of possible mode values.
`----

Since the mode of .el files on git is 0644, this causes git to flag the
files as modified (since I am running Org from the distribution
directory).

So the obvious answer is to not to use make install (as per the
documentation). This is a heads-up to me since I believed install did
more than simply moving .el and .elc files from A to B.

However this is new behavior and worth mentioning. 'make install' (no
sudo) used to silently `install' (or not as the case may be) and not
change modes as above. Personally I wouldn't call it a regression though
since make install is pointless IIUC in this situation.

Since I can no longer use `make up2' it seems that `make up1' is the
correct command for my situation. This works fine except that
org-version points to the wrong org-install:

--8<---------------cut here---------------start------------->8---
 Org-mode version 7.8.09
(release_7.8.09-441-g6732d6.dirty @
/Applications/Emacs.app/Contents/Resources/lisp/org/org-install.el.gz) 
--8<---------------cut here---------------end--------------->8---

So for my case I've added the target upgrade to local.mk:

--8<---------------cut here---------------start------------->8---
upgrade: up1 autoloads
--8<---------------cut here---------------end--------------->8---

HTH

Best, Martyn


> Regards,
> Achim.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: local.mk and SUDO
  2012-04-29 12:59       ` Martyn Jago
@ 2012-04-29 21:57         ` Achim Gratz
  0 siblings, 0 replies; 6+ messages in thread
From: Achim Gratz @ 2012-04-29 21:57 UTC (permalink / raw)
  To: emacs-orgmode

Martyn Jago writes:
> So the obvious answer is to not to use make install (as per the
> documentation). This is a heads-up to me since I believed install did
> more than simply moving .el and .elc files from A to B.

You can use "make install", but you must never install into the source
directory.  I'll check if changing the install mode to 644 is OK.

> However this is new behavior and worth mentioning. 'make install' (no
> sudo) used to silently `install' (or not as the case may be) and not
> change modes as above. Personally I wouldn't call it a regression though
> since make install is pointless IIUC in this situation.

If install were to use "cp", then you might even lose data when you try
to install into the same directory.  Don't do this, prefix must not
point to the git directory!

> Since I can no longer use `make up2' it seems that `make up1' is the
> correct command for my situation. This works fine except that
> org-version points to the wrong org-install:
>
>  Org-mode version 7.8.09
> (release_7.8.09-441-g6732d6.dirty @
> /Applications/Emacs.app/Contents/Resources/lisp/org/org-install.el.gz) 
>
> So for my case I've added the target upgrade to local.mk:
>
> upgrade: up1 autoloads

Correct.

Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Samples for the Waldorf Blofeld:
http://Synth.Stromeko.net/Downloads.html#BlofeldSamplesExtra

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2012-04-29 21:57 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-27 12:35 local.mk and SUDO Martyn Jago
2012-04-27 18:11 ` Achim Gratz
2012-04-27 20:02   ` Martyn Jago
2012-04-27 22:57     ` Achim Gratz
2012-04-29 12:59       ` Martyn Jago
2012-04-29 21:57         ` Achim Gratz

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).