Re: Point and click - permission denied

2024-03-22 Thread Tom Brennan
Ok, I just noticed that the binary location is wrong -- and I have
more than one install on this computer, so I'm going to remove both
and start with the latest version and see what happens.

On Fri, Mar 22, 2024 at 10:20 AM Tom Brennan  wrote:
>
> BTW, for what it's worth it does still seem to be an apparmor issue.
> The output from dmesg is
>
> ```
> [ 8087.871623] audit: type=1400 audit(177091.247:143):
> apparmor="DENIED" operation="exec" profile="/usr/bin/evince"
> name="/usr/local/bin/lilypond-wrapper.guile" pid=65082 comm="sh"
> requested_mask="x" denied_mask="x" fsuid=1000 ouid=0
> [ 8087.871694] audit: type=1400 audit(177091.247:144):
> apparmor="DENIED" operation="exec" profile="/usr/bin/evince"
> name="/usr/bin/lilypond-invoke-editor" pid=65082 comm="sh"
> requested_mask="x" denied_mask="x" fsuid=1000 ouid=0
> [ 8087.871698] audit: type=1400 audit(177091.247:145):
> apparmor="DENIED" operation="exec" profile="/usr/bin/evince"
> name="/usr/bin/lilypond-invoke-editor" pid=65082 comm="sh"
> requested_mask="x" denied_mask="x" fsuid=1000 ouid=0
> ```
>
> On Fri, Mar 22, 2024 at 9:19 AM Tom Brennan  wrote:
> >
> > Hello
> >
> > (Note: this email uses markdown formatting.)
> >
> > It's been a while since I've used lilypond, and I had point and click
> > working on another system, but I can't remember what I did. I do
> > remember there were hiccups. Also, it was probably Arch Linux and now
> > the distro I'm using is Ubuntu 22.04, Lilypond version 2.22.2.
> >
> > I want to set up point and click with VS Code, ultimately, and I open
> > the pdf from a terminal emulator with xdg-open (I believe the app that
> > opens it is called "evince" but it just displays "Document Viewer".
> >
> > First I updated the `LYEDITOR` to point to VS Code with its required
> > CLI arguments.
> >
> > ```
> > ~/Workspace/my-lilypond-project$ lilypond main.ly
> > ~/Workspace/my-lilypond-project$ xdg-open main.pdf
> > ~/Workspace/my-lilypond-project$ export LYEDITOR="code --goto
> > %(file)s:%(line)s:%(column)s"
> > ```
> >
> > From there I right-clicked a clickable thing and copied its address to
> > try it out with the CLI:
> >
> > ```
> > ~/Workspace/my-lilypond-project$ lilypond-invoke-editor
> > textedit:///home/tjb1982/Workspace/my-lilypond-project/./movement-foo/cello.ly:27:107:108
> > ```
> >
> > And this worked as expected, so then I went to configure xdg-mime to
> > handle the `x-scheme-handler/textedit` mimetype as per the docs
> > [here](https://lilypond.org/doc/v2.25/Documentation/usage/using-gnome-for-point-and-click).
> >
> > ```shell
> > ~/Workspace/my-lilypond-project$ cd /tmp
> > /tmp$ cat <<_EOF > lilypond-invoke-editor.desktop
> > [Desktop Entry]
> > Version=1.0
> > Name=lilypond-invoke-editor
> > GenericName=Textedit URI handler
> > Comment=URI handler for textedit:
> > Exec=lilypond-invoke-editor %u
> > Terminal=false
> > Type=Application
> > MimeType=x-scheme-handler/textedit;
> > Categories=Editor
> > NoDisplay=true
> > _EOF
> > /tmp$ xdg-desktop-menu install ./lilypond-invoke-editor.desktop
> > /tmp$ xdg-mime default lilypond-invoke-editor.desktop 
> > x-scheme-handler/textedit
> > /tmp$ cd -
> > ~/Workspace/my-lilypond-project$ lilypond main.ly
> > ~/Workspace/my-lilypond-project$ xdg-open main.pdf
> > ```
> >
> > From here, clicking on a clickable item in the pdf results in the
> > console logging:
> >
> > ```
> > sh: 1: exec: lilypond-invoke-editor: Permission denied
> > ```
> >
> > I found the thread
> > [here](https://lists.gnu.org/archive/html/lilypond-user/2019-02/msg00276.html)
> > where David Sumbler figured out some required configuration for
> > apparmor and evince, so I tried to follow the same process. I already
> > had a file at `/etc/apparmor.d/usr.bin.evince`, so I edited the
> > `/usr/bin/evince` section of the file like this:
> >
> > ```
> > /usr/bin/evince {
> >   ...
> >   /usr/local/bin/lilypond-invoke-editor Cx -> sanitized_helper,
> > }
> > ```
> >
> > I ran the parser, double-checked that this is the actual location of
> > `lilypond-invoke-editor`, and restarted the apparmor service:
> >
> > ```
> > ~$ sudo apparmor_parser -r -T -W /etc/apparmor.d/usr.bin.evince
> > ~$ echo $?
> > 0
> > ~$ which lilypond-invoke-editor
> > /usr/local/bin/lilypond-invoke-editor
> > ~$ sudo systemctl restart apparmor
> > ~$ sudo systemctl status apparmor
> > ● apparmor.service - Load AppArmor profiles
> >  Loaded: loaded (/lib/systemd/system/apparmor.service; enabled;
> > vendor preset: enabled)
> >  Active: active (exited) since Fri 2024-03-22 09:12:02 EDT; 1s ago
> >Docs: man:apparmor(7)
> >  https://gitlab.com/apparmor/apparmor/wikis/home/
> > Process: 24362 ExecStart=/lib/apparmor/apparmor.systemd reload
> > (code=exited, status=0/SUCCESS)
> >Main PID: 24362 (code=exited, status=0/SUCCESS)
> > CPU: 161ms
> >
> > Mar 22 09:12:02 chester systemd[1]: Starting Load AppArmor profiles...
> > Mar 22 09:12:02 chester apparmor.systemd[24362]: 

Re: Point and click - permission denied

2024-03-22 Thread Tom Brennan
BTW, for what it's worth it does still seem to be an apparmor issue.
The output from dmesg is

```
[ 8087.871623] audit: type=1400 audit(177091.247:143):
apparmor="DENIED" operation="exec" profile="/usr/bin/evince"
name="/usr/local/bin/lilypond-wrapper.guile" pid=65082 comm="sh"
requested_mask="x" denied_mask="x" fsuid=1000 ouid=0
[ 8087.871694] audit: type=1400 audit(177091.247:144):
apparmor="DENIED" operation="exec" profile="/usr/bin/evince"
name="/usr/bin/lilypond-invoke-editor" pid=65082 comm="sh"
requested_mask="x" denied_mask="x" fsuid=1000 ouid=0
[ 8087.871698] audit: type=1400 audit(177091.247:145):
apparmor="DENIED" operation="exec" profile="/usr/bin/evince"
name="/usr/bin/lilypond-invoke-editor" pid=65082 comm="sh"
requested_mask="x" denied_mask="x" fsuid=1000 ouid=0
```

On Fri, Mar 22, 2024 at 9:19 AM Tom Brennan  wrote:
>
> Hello
>
> (Note: this email uses markdown formatting.)
>
> It's been a while since I've used lilypond, and I had point and click
> working on another system, but I can't remember what I did. I do
> remember there were hiccups. Also, it was probably Arch Linux and now
> the distro I'm using is Ubuntu 22.04, Lilypond version 2.22.2.
>
> I want to set up point and click with VS Code, ultimately, and I open
> the pdf from a terminal emulator with xdg-open (I believe the app that
> opens it is called "evince" but it just displays "Document Viewer".
>
> First I updated the `LYEDITOR` to point to VS Code with its required
> CLI arguments.
>
> ```
> ~/Workspace/my-lilypond-project$ lilypond main.ly
> ~/Workspace/my-lilypond-project$ xdg-open main.pdf
> ~/Workspace/my-lilypond-project$ export LYEDITOR="code --goto
> %(file)s:%(line)s:%(column)s"
> ```
>
> From there I right-clicked a clickable thing and copied its address to
> try it out with the CLI:
>
> ```
> ~/Workspace/my-lilypond-project$ lilypond-invoke-editor
> textedit:///home/tjb1982/Workspace/my-lilypond-project/./movement-foo/cello.ly:27:107:108
> ```
>
> And this worked as expected, so then I went to configure xdg-mime to
> handle the `x-scheme-handler/textedit` mimetype as per the docs
> [here](https://lilypond.org/doc/v2.25/Documentation/usage/using-gnome-for-point-and-click).
>
> ```shell
> ~/Workspace/my-lilypond-project$ cd /tmp
> /tmp$ cat <<_EOF > lilypond-invoke-editor.desktop
> [Desktop Entry]
> Version=1.0
> Name=lilypond-invoke-editor
> GenericName=Textedit URI handler
> Comment=URI handler for textedit:
> Exec=lilypond-invoke-editor %u
> Terminal=false
> Type=Application
> MimeType=x-scheme-handler/textedit;
> Categories=Editor
> NoDisplay=true
> _EOF
> /tmp$ xdg-desktop-menu install ./lilypond-invoke-editor.desktop
> /tmp$ xdg-mime default lilypond-invoke-editor.desktop 
> x-scheme-handler/textedit
> /tmp$ cd -
> ~/Workspace/my-lilypond-project$ lilypond main.ly
> ~/Workspace/my-lilypond-project$ xdg-open main.pdf
> ```
>
> From here, clicking on a clickable item in the pdf results in the
> console logging:
>
> ```
> sh: 1: exec: lilypond-invoke-editor: Permission denied
> ```
>
> I found the thread
> [here](https://lists.gnu.org/archive/html/lilypond-user/2019-02/msg00276.html)
> where David Sumbler figured out some required configuration for
> apparmor and evince, so I tried to follow the same process. I already
> had a file at `/etc/apparmor.d/usr.bin.evince`, so I edited the
> `/usr/bin/evince` section of the file like this:
>
> ```
> /usr/bin/evince {
>   ...
>   /usr/local/bin/lilypond-invoke-editor Cx -> sanitized_helper,
> }
> ```
>
> I ran the parser, double-checked that this is the actual location of
> `lilypond-invoke-editor`, and restarted the apparmor service:
>
> ```
> ~$ sudo apparmor_parser -r -T -W /etc/apparmor.d/usr.bin.evince
> ~$ echo $?
> 0
> ~$ which lilypond-invoke-editor
> /usr/local/bin/lilypond-invoke-editor
> ~$ sudo systemctl restart apparmor
> ~$ sudo systemctl status apparmor
> ● apparmor.service - Load AppArmor profiles
>  Loaded: loaded (/lib/systemd/system/apparmor.service; enabled;
> vendor preset: enabled)
>  Active: active (exited) since Fri 2024-03-22 09:12:02 EDT; 1s ago
>Docs: man:apparmor(7)
>  https://gitlab.com/apparmor/apparmor/wikis/home/
> Process: 24362 ExecStart=/lib/apparmor/apparmor.systemd reload
> (code=exited, status=0/SUCCESS)
>Main PID: 24362 (code=exited, status=0/SUCCESS)
> CPU: 161ms
>
> Mar 22 09:12:02 chester systemd[1]: Starting Load AppArmor profiles...
> Mar 22 09:12:02 chester apparmor.systemd[24362]: Restarting AppArmor
> Mar 22 09:12:02 chester apparmor.systemd[24362]: Reloading AppArmor profiles
> Mar 22 09:12:02 chester apparmor.systemd[24379]: Skipping profile in
> /etc/apparmor.d/disable: usr.sbin.rsyslogd
> Mar 22 09:12:02 chester systemd[1]: Finished Load AppArmor profiles.
> ```
>
> This didn't change anything (still getting the permission denied error
> when clicking).
>
> I also tried to stop the apparmor service and then reboot
>
> ```
> ~$ sudo systemctl stop apparmor
> ~$ 

Point and click - permission denied

2024-03-22 Thread Tom Brennan
Hello

(Note: this email uses markdown formatting.)

It's been a while since I've used lilypond, and I had point and click
working on another system, but I can't remember what I did. I do
remember there were hiccups. Also, it was probably Arch Linux and now
the distro I'm using is Ubuntu 22.04, Lilypond version 2.22.2.

I want to set up point and click with VS Code, ultimately, and I open
the pdf from a terminal emulator with xdg-open (I believe the app that
opens it is called "evince" but it just displays "Document Viewer".

First I updated the `LYEDITOR` to point to VS Code with its required
CLI arguments.

```
~/Workspace/my-lilypond-project$ lilypond main.ly
~/Workspace/my-lilypond-project$ xdg-open main.pdf
~/Workspace/my-lilypond-project$ export LYEDITOR="code --goto
%(file)s:%(line)s:%(column)s"
```

>From there I right-clicked a clickable thing and copied its address to
try it out with the CLI:

```
~/Workspace/my-lilypond-project$ lilypond-invoke-editor
textedit:///home/tjb1982/Workspace/my-lilypond-project/./movement-foo/cello.ly:27:107:108
```

And this worked as expected, so then I went to configure xdg-mime to
handle the `x-scheme-handler/textedit` mimetype as per the docs
[here](https://lilypond.org/doc/v2.25/Documentation/usage/using-gnome-for-point-and-click).

```shell
~/Workspace/my-lilypond-project$ cd /tmp
/tmp$ cat <<_EOF > lilypond-invoke-editor.desktop
[Desktop Entry]
Version=1.0
Name=lilypond-invoke-editor
GenericName=Textedit URI handler
Comment=URI handler for textedit:
Exec=lilypond-invoke-editor %u
Terminal=false
Type=Application
MimeType=x-scheme-handler/textedit;
Categories=Editor
NoDisplay=true
_EOF
/tmp$ xdg-desktop-menu install ./lilypond-invoke-editor.desktop
/tmp$ xdg-mime default lilypond-invoke-editor.desktop x-scheme-handler/textedit
/tmp$ cd -
~/Workspace/my-lilypond-project$ lilypond main.ly
~/Workspace/my-lilypond-project$ xdg-open main.pdf
```

>From here, clicking on a clickable item in the pdf results in the
console logging:

```
sh: 1: exec: lilypond-invoke-editor: Permission denied
```

I found the thread
[here](https://lists.gnu.org/archive/html/lilypond-user/2019-02/msg00276.html)
where David Sumbler figured out some required configuration for
apparmor and evince, so I tried to follow the same process. I already
had a file at `/etc/apparmor.d/usr.bin.evince`, so I edited the
`/usr/bin/evince` section of the file like this:

```
/usr/bin/evince {
  ...
  /usr/local/bin/lilypond-invoke-editor Cx -> sanitized_helper,
}
```

I ran the parser, double-checked that this is the actual location of
`lilypond-invoke-editor`, and restarted the apparmor service:

```
~$ sudo apparmor_parser -r -T -W /etc/apparmor.d/usr.bin.evince
~$ echo $?
0
~$ which lilypond-invoke-editor
/usr/local/bin/lilypond-invoke-editor
~$ sudo systemctl restart apparmor
~$ sudo systemctl status apparmor
● apparmor.service - Load AppArmor profiles
 Loaded: loaded (/lib/systemd/system/apparmor.service; enabled;
vendor preset: enabled)
 Active: active (exited) since Fri 2024-03-22 09:12:02 EDT; 1s ago
   Docs: man:apparmor(7)
 https://gitlab.com/apparmor/apparmor/wikis/home/
Process: 24362 ExecStart=/lib/apparmor/apparmor.systemd reload
(code=exited, status=0/SUCCESS)
   Main PID: 24362 (code=exited, status=0/SUCCESS)
CPU: 161ms

Mar 22 09:12:02 chester systemd[1]: Starting Load AppArmor profiles...
Mar 22 09:12:02 chester apparmor.systemd[24362]: Restarting AppArmor
Mar 22 09:12:02 chester apparmor.systemd[24362]: Reloading AppArmor profiles
Mar 22 09:12:02 chester apparmor.systemd[24379]: Skipping profile in
/etc/apparmor.d/disable: usr.sbin.rsyslogd
Mar 22 09:12:02 chester systemd[1]: Finished Load AppArmor profiles.
```

This didn't change anything (still getting the permission denied error
when clicking).

I also tried to stop the apparmor service and then reboot

```
~$ sudo systemctl stop apparmor
~$ sudo systemctl disable apparmor
```

This didn't have any effect. What should I try next?

Thanks,
Tom