Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 23 Nov 2011 16:42:45 GMT
From:      Peter <fbsdq@peterk.org>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/162790: i3 port does not install all necessary files
Message-ID:  <201111231642.pANGgj9U086283@red.freebsd.org>
Resent-Message-ID: <201111231650.pANGo6No008901@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         162790
>Category:       ports
>Synopsis:       i3 port does not install all necessary files
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Nov 23 16:50:05 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator:     Peter
>Release:        9.0-PRERELEASE #0 r227803
>Organization:
>Environment:
FreeBSD pkbsd.pb.com 9.0-PRERELEASE FreeBSD 9.0-PRERELEASE #0 r227803: Mon Nov 21 15:09:10 MST 2011     peter@pkbsd.pb.com:/usr/obj/data/src9/sys/GENERIC  amd64

>Description:
The latest x11-wm/i3 port does not install all the necessary files/scripts.

>From http://i3wm.org/downloads/RELEASE-NOTES-4.1.txt:
 Introduce the i3-sensible-{pager,editor,terminal} scripts to execute
    $PAGER, $EDITOR or an available terminal emulator

These are not installed and causes i3 to not fully work. In my case, i3 was non responsive at all and required a kill.
I've copied them manually from the work directory of the port or local/bin/ and everything works fine.


Missing files afaik are:
work/i3-4.1/i3-sensible-editor
work/i3-4.1/i3-sensible-pager
work/i3-4.1/i3-sensible-terminal
 and their man pages.
>How-To-Repeat:
# pwd
/usr/ports/x11-wm/i3
# make install
===>  Installing for i3-4.1
===>   i3-4.1 depends on file: /usr/local/libdata/pkgconfig/x11.pc - found
===>   i3-4.1 depends on file: /usr/local/libdata/xorg/libraries - found
===>   i3-4.1 depends on shared library: xcb.2 - found
===>   i3-4.1 depends on shared library: startup-notification-1.0 - found
===>   i3-4.1 depends on shared library: xcb-event.1 - found
===>   i3-4.1 depends on shared library: ev.4 - found
===>   i3-4.1 depends on shared library: yajl.1 - found
===>   i3-4.1 depends on shared library: iconv.3 - found
===>   Generating temporary packing list
===>  Checking if x11-wm/i3 already installed
install  -o root -g wheel -m 555 /data/ports/x11-wm/i3/work/i3-4.1/i3 /usr/local/bin/
install  -o root -g wheel -m 555 /data/ports/x11-wm/i3/work/i3-4.1/i3-config-wizard/i3-config-wizard /usr/local/bin/
install  -o root -g wheel -m 555 /data/ports/x11-wm/i3/work/i3-4.1/i3-input/i3-input /usr/local/bin/
install  -o root -g wheel -m 555 /data/ports/x11-wm/i3/work/i3-4.1/i3-msg/i3-msg /usr/local/bin/
install  -o root -g wheel -m 555 /data/ports/x11-wm/i3/work/i3-4.1/i3-nagbar/i3-nagbar /usr/local/bin/
install  -o root -g wheel -m 555 /data/ports/x11-wm/i3/work/i3-4.1/i3bar/i3bar /usr/local/bin/
install  -o root -g wheel -m 444 /data/ports/x11-wm/i3/work/i3-4.1/config.sample /usr/local/etc/i3
install  -o root -g wheel -m 444 /data/ports/x11-wm/i3/work/i3-4.1/welcome /usr/local/etc/i3/welcome
install  -o root -g wheel -m 444 /data/ports/x11-wm/i3/work/i3-4.1/man/i3-config-wizard.1 /usr/local/man/man1/
install  -o root -g wheel -m 444 /data/ports/x11-wm/i3/work/i3-4.1/man/i3-input.1 /usr/local/man/man1/
install  -o root -g wheel -m 444 /data/ports/x11-wm/i3/work/i3-4.1/man/i3-migrate-config-to-v4.1 /usr/local/man/man1/
install  -o root -g wheel -m 444 /data/ports/x11-wm/i3/work/i3-4.1/man/i3-msg.1 /usr/local/man/man1/
install  -o root -g wheel -m 444 /data/ports/x11-wm/i3/work/i3-4.1/man/i3-nagbar.1 /usr/local/man/man1/
install  -o root -g wheel -m 444 /data/ports/x11-wm/i3/work/i3-4.1/man/i3-wsbar.1 /usr/local/man/man1/
install  -o root -g wheel -m 444 /data/ports/x11-wm/i3/work/i3-4.1/man/i3.1 /usr/local/man/man1/
======================================================================================

        i3 need a config file! A example do you found on /usr/local/etc/i3
        Please rename it in /usr/local/etc/i3/config
        For more information read the manpage :)

======================================================================================
===>   Compressing manual pages for i3-4.1
===>   Registering installation for i3-4.1
===> SECURITY REPORT:
      This port has installed the following files which may act as network
      servers and may therefore pose a remote security risk to the system.
/usr/local/bin/i3

      If there are vulnerabilities in these programs there may be a security
      risk to the system. FreeBSD makes no guarantee about the security of
      ports included in the Ports Collection. Please type 'make deinstall'
      to deinstall the port if this is a concern.

      For more information, and contact details about the security
      status of this software, see the following webpage:
http://i3wm.org

>Fix:
Manually copy the files from work ${WRKSRC} or patch Makefile:
I've attached a diff of my "hacked" Makefile, it seems to work.

/usr/ports/x11-wm/i3/work/i3-4.1/Makefile lists all the needed files, and running gmake in that dir installs them but to /bin instead of local/bin:

install: all
        echo "[i3] INSTALL"
        $(INSTALL) -d -m 0755 $(DESTDIR)$(PREFIX)/bin
        $(INSTALL) -d -m 0755 $(DESTDIR)$(SYSCONFDIR)/i3
        $(INSTALL) -d -m 0755 $(DESTDIR)$(PREFIX)/include/i3
        $(INSTALL) -d -m 0755 $(DESTDIR)$(PREFIX)/share/xsessions
        $(INSTALL) -m 0755 i3 $(DESTDIR)$(PREFIX)/bin/
        $(INSTALL) -m 0755 i3-migrate-config-to-v4 $(DESTDIR)$(PREFIX)/bin/
        $(INSTALL) -m 0755 i3-sensible-editor $(DESTDIR)$(PREFIX)/bin/
        $(INSTALL) -m 0755 i3-sensible-pager $(DESTDIR)$(PREFIX)/bin/
        $(INSTALL) -m 0755 i3-sensible-terminal $(DESTDIR)$(PREFIX)/bin/
        test -e $(DESTDIR)$(SYSCONFDIR)/i3/config || $(INSTALL) -m 0644 i3.config $(DESTDIR)$(SYSCONFDIR)/i3/config
        test -e $(DESTDIR)$(SYSCONFDIR)/i3/config.keycodes || $(INSTALL) -m 0644 i3.config.keycodes $(DESTDIR)$(SYSCONFDIR)/i3/co
nfig.keycodes
        $(INSTALL) -m 0644 i3.welcome $(DESTDIR)$(SYSCONFDIR)/i3/welcome
        $(INSTALL) -m 0644 i3.desktop $(DESTDIR)$(PREFIX)/share/xsessions/
        $(INSTALL) -m 0644 include/i3/ipc.h $(DESTDIR)$(PREFIX)/include/i3/
        for dir in $(SUBDIRS); do \
                $(MAKE) -C $$dir install; \
        done


Patch attached with submission follows:

# diff Makefile Makefile.org
40,44d39
<               bin/i3-migrate-config-to-v4 \
<               bin/i3-sensible-editor \
<               bin/i3-sensible-pager \
<               bin/i3-sensible-terminal \
<               bin/i3-wsbar \
46,47c41
<               etc/i3/welcome
<
---
>               etc/i3/welcome
51,52c45
< MANUALS=      i3-config-wizard.1 i3-input.1 i3-migrate-config-to-v4.1 i3-msg.1 i3-nagbar.1 i3-wsbar.1 i3.1 i3-sensible-editor.1 i3-sensible-editor.man i3-sensible-pager.1 i3-sensible-pager.man i3-sensible-terminal.1 i3-sensible-terminal.man
<
---
> MANUALS=      i3-config-wizard.1 i3-input.1 i3-migrate-config-to-v4.1 i3-msg.1 i3-nagbar.1 i3-wsbar.1 i3.1
80,82d72
< .for i in i3-sensible-editor i3-sensible-pager i3-sensible-terminal
<       ${INSTALL_SCRIPT} ${WRKSRC}/$i ${PREFIX}/bin/
< .endfor


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201111231642.pANGgj9U086283>