jschlatow / taskopen

Tool for taking notes and open urls with taskwarrior
GNU General Public License v2.0
363 stars 31 forks source link

Installation under MacOS? #151

Closed c-fred closed 2 years ago

c-fred commented 2 years ago

Has anybody been able to install this successfully under MacOS? The -D option isn't supported for install, and I don't think my kludge of the installation was successful, as I can't open annotations (although I can create several Notes annotations onto tasks).

c-bass commented 2 years ago

I had the same problem. To get it installed, I removed the -D flag, as it doesn't exist in the MacOS provided install. I also removed all occurrences of $(DESTDIR). If it was provided, I got an unreasonable installation directory, without it I got double slashes at the beginning, e.g. //usr/bin/taskopen Lastly, I used this command to install. Note the changed PREFIX: sudo make PREFIX=/usr/local install

This doesn't trace of all my steps, as I had some time in between getting started, playing around and finally succeeding. This diff should get you started though:

diff --git a/Makefile b/Makefile
index 7edf251..4c597a4 100644
--- a/Makefile
+++ b/Makefile
@@ -34,15 +34,15 @@ $(MANFILES_GZ): %.gz: % Makefile
    gzip -c $* > $@

 install: $(MANFILES_GZ) taskopen
-   install -Dm 0755 taskopen $(DESTDIR)/$(PREFIX)/bin/taskopen
-   install -Dm 0644 doc/man/taskopen.1.gz $(DESTDIR)/$(PREFIX)/share/man/man1/taskopen.1.gz
-   install -Dm 0644 doc/man/taskopenrc.5.gz $(DESTDIR)/$(PREFIX)/share/man/man5/taskopenrc.5.gz
-   mkdir -p $(DESTDIR)/$(PREFIX)/share/taskopen/scripts/
-   cp -r scripts/* $(DESTDIR)/$(PREFIX)/share/taskopen/scripts/
-   chmod -R 755 $(DESTDIR)/$(PREFIX)/share/taskopen/scripts
-   mkdir -p $(DESTDIR)/$(PREFIX)/share/taskopen/examples
-   cp -r examples/* $(DESTDIR)/$(PREFIX)/share/taskopen/examples
-   chmod -R 755 $(DESTDIR)/$(PREFIX)/share/taskopen/examples
+   install -m 0755 taskopen $(PREFIX)/bin/taskopen
+   install -m 0644 doc/man/taskopen.1.gz $(PREFIX)/share/man/man1/taskopen.1.gz
+   install -m 0644 doc/man/taskopenrc.5.gz $(PREFIX)/share/man/man5/taskopenrc.5.gz
+   mkdir -p $(PREFIX)/share/taskopen/scripts/
+   cp -r scripts/* $(PREFIX)/share/taskopen/scripts/
+   chmod -R 755 $(PREFIX)/share/taskopen/scripts
+   mkdir -p $(PREFIX)/share/taskopen/examples
+   cp -r examples/* $(PREFIX)/share/taskopen/examples
+   chmod -R 755 $(PREFIX)/share/taskopen/examples

 clean:
    rm -f $(MANFILES_GZ)
jschlatow commented 2 years ago

@c-bass Thank you very much for sharing your solution. I don't have a MacOS system available for testing, hence I appreciate your help.

@c-fred I've applied the above suggestions. If you haven't succeeded to install taskopen yet, you can therefore give the current master branch a try.