Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 28 Dec 2016 07:25:35 +0000 (UTC)
From:      Alexey Dokuchaev <danfe@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r429718 - in head/x11-wm: . subtle subtle/files
Message-ID:  <201612280725.uBS7PZMk061063@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: danfe
Date: Wed Dec 28 07:25:34 2016
New Revision: 429718
URL: https://svnweb.freebsd.org/changeset/ports/429718

Log:
  Add a port of subtle, grid-based manual tiling window manager.
  
  WWW: http://subtle.subforge.org/

Added:
  head/x11-wm/subtle/
  head/x11-wm/subtle/Makefile   (contents, props changed)
  head/x11-wm/subtle/distinfo   (contents, props changed)
  head/x11-wm/subtle/files/
  head/x11-wm/subtle/files/patch-Rakefile   (contents, props changed)
  head/x11-wm/subtle/files/patch-src_shared_shared.h   (contents, props changed)
  head/x11-wm/subtle/files/patch-src_subtle_ruby.c   (contents, props changed)
  head/x11-wm/subtle/pkg-descr   (contents, props changed)
  head/x11-wm/subtle/pkg-plist   (contents, props changed)
Modified:
  head/x11-wm/Makefile

Modified: head/x11-wm/Makefile
==============================================================================
--- head/x11-wm/Makefile	Wed Dec 28 07:13:51 2016	(r429717)
+++ head/x11-wm/Makefile	Wed Dec 28 07:25:34 2016	(r429718)
@@ -106,6 +106,7 @@
     SUBDIR += selectwm
     SUBDIR += simple-ccsm
     SUBDIR += spectrwm
+    SUBDIR += subtle
     SUBDIR += swm
     SUBDIR += tinywm
     SUBDIR += transset

Added: head/x11-wm/subtle/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/x11-wm/subtle/Makefile	Wed Dec 28 07:25:34 2016	(r429718)
@@ -0,0 +1,32 @@
+# Created by: Alexey Dokuchaev <danfe@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME=	subtle
+PORTVERSION=	0.11.3224
+CATEGORIES=	x11-wm ruby
+MASTER_SITES=	http://subtle.subforge.org/attachments/download/81/
+DISTNAME=	${PORTNAME}-${PORTVERSION}-xi
+
+MAINTAINER=	danfe@FreeBSD.org
+COMMENT=	Grid-based manual tiling window manager
+
+LICENSE=	GPLv2
+
+BUILD_DEPENDS=	rake:devel/rubygem-rake
+
+USES=		pkgconfig shebangfix tar:tbz2
+USE_RUBY=	yes
+USE_XORG=	x11 xft xinerama xpm xrandr xtst
+
+MAKE_CMD=	rake -v
+MAKEFILE=	Rakefile
+ALL_TARGET=	build
+
+post-patch:
+	@${REINPLACE_CMD} -e 's,/etc/xdg,${LOCALBASE}&,' \
+		${WRKSRC}/src/subtle/ruby.c
+
+do-configure:
+	@cd ${WRKSRC} && ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} config
+
+.include <bsd.port.mk>

Added: head/x11-wm/subtle/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/x11-wm/subtle/distinfo	Wed Dec 28 07:25:34 2016	(r429718)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1482831730
+SHA256 (subtle-0.11.3224-xi.tbz2) = a22ee94a70c1105a018e1c0a754597b4e3a87d1b915301a0b22888920fa0f8a2
+SIZE (subtle-0.11.3224-xi.tbz2) = 144607

Added: head/x11-wm/subtle/files/patch-Rakefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/x11-wm/subtle/files/patch-Rakefile	Wed Dec 28 07:25:34 2016	(r429718)
@@ -0,0 +1,81 @@
+--- Rakefile.orig	2012-06-20 11:29:55 UTC
++++ Rakefile
+@@ -45,14 +45,14 @@ end
+ @options = {
+   "cc"         => ENV["CC"] || "gcc",
+   "destdir"    => ENV["DESTDIR"] || "",
+-  "prefix"     => "/usr",
+-  "manprefix"  => "$(prefix)/share/man",
+-  "bindir"     => "$(destdir)/$(prefix)/bin",
+-  "sysconfdir" => "$(destdir)/etc",
++  "prefix"     => ENV["PREFIX"] || "/usr",
++  "manprefix"  => "%s/man" % (ENV["MANPREFIX"] || "$(prefix)/share"),
++  "bindir"     => "$(destdir)$(prefix)/bin",
++  "sysconfdir" => "$(destdir)$(prefix)/etc",
+   "configdir"  => "$(sysconfdir)/xdg/$(PKG_NAME)",
+-  "datadir"    => "$(destdir)/$(prefix)/share/$(PKG_NAME)",
+-  "extdir"     => "$(destdir)/$(sitelibdir)/$(PKG_NAME)",
+-  "mandir"     => "$(destdir)/$(manprefix)/man1",
++  "datadir"    => "$(destdir)$(prefix)/share/$(PKG_NAME)",
++  "extdir"     => "$(destdir)$(sitelibdir)/$(PKG_NAME)",
++  "mandir"     => "$(destdir)$(manprefix)/man1",
+   "debug"      => "no",
+   "xpm"        => "yes",
+   "xft"        => "yes",
+@@ -63,7 +63,7 @@ end
+   "hdrdir"     => "",
+   "archdir"    => "",
+   "revision"   => "3224", #< Latest stable
+-  "cflags"     => "-Wall -Werror -Wpointer-arith -Wstrict-prototypes -Wunused -Wshadow -std=gnu99",
++  "cflags"     => "-Wall -Wpointer-arith -Wstrict-prototypes -Wunused -Wshadow -std=gnu99",
+   "cpppath"    => "-I. -I$(builddir) -Isrc -Isrc/shared -Isrc/subtle -idirafter$(hdrdir) -idirafter$(archdir)",
+   "ldflags"    => "-L$(libdir) $(rpath) $(LIBS) -l$(RUBY_SO_NAME)",
+   "extflags"   => "$(LDFLAGS) $(rpath) $(LIBS) -l$(RUBY_SO_NAME)",
+@@ -258,8 +258,8 @@ task(:config) do
+     make_config unless checksums
+   else
+     # Check version
+-    if 1 != RbConfig::CONFIG["MAJOR"].to_i or 9 != RbConfig::CONFIG["MINOR"].to_i
+-      fail("Ruby 1.9.0 or higher required")
++    if 2 > RbConfig::CONFIG["MAJOR"].to_i
++      fail("Ruby 2.0.0 (1.9.0 really) or higher required")
+     end
+ 
+     checksums
+@@ -396,7 +396,10 @@ task(:config) do
+       checking_for("X11/Xft/Xft.h") do
+         ret = false
+ 
++        # Work around pkg_config()'s stupidity: obtain real (full) cflags
++        cutoff = $INCFLAGS.length
+         cflags, ldflags, libs = pkg_config("xft")
++        cflags << $INCFLAGS[cutoff..-1]
+         unless libs.nil?
+           # Update flags
+           @options["cpppath"] << " %s" % [ cflags ]
+@@ -495,6 +498,7 @@ task(:config) do
+ -----------------
+ Binaries............: #{@options["bindir"]}
+ Configuration.......: #{@options["configdir"]}
++Manual pages........: #{@options["mandir"]}
+ Extension...........: #{@options["extdir"]}
+ 
+ Xpm support.........: #{@options["xpm"]}
+@@ -503,6 +507,8 @@ Xinerama support....: #{@options["xinera
+ XRandR support......: #{@options["xrandr"]}
+ XTest support.......: #{@options["xtest"]}
+ Debugging messages..: #{@options["debug"]}
++Compiler............: #{@options["cc"]} (#{
++`#{@options["cc"]} -v 2>&1`[/\w+ version [\d.]+/]})
+ 
+ EOF
+   end
+@@ -613,7 +619,7 @@ task(:install => [:config, :build]) do
+     )
+ 
+     # Update interpreter name
+-    `#{sed} -i -e 's#/usr/bin/ruby.*##{interpreter}#' \
++    `#{sed} -i '' -e 's#/usr/bin/ruby.*##{interpreter}#' \
+       #{File.join(@options["bindir"], File.basename(f))}`
+   end
+ 

Added: head/x11-wm/subtle/files/patch-src_shared_shared.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/x11-wm/subtle/files/patch-src_shared_shared.h	Wed Dec 28 07:25:34 2016	(r429718)
@@ -0,0 +1,10 @@
+--- src/shared/shared.h.orig	2012-06-20 11:29:55 UTC
++++ src/shared/shared.h
+@@ -28,6 +28,7 @@
+ #include <X11/Xutil.h>
+ #include <X11/Xmd.h>
+ #include <X11/cursorfont.h>
++#include <ruby.h>
+ #include <ruby/oniguruma.h>
+ 
+ #include "config.h"

Added: head/x11-wm/subtle/files/patch-src_subtle_ruby.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/x11-wm/subtle/files/patch-src_subtle_ruby.c	Wed Dec 28 07:25:34 2016	(r429718)
@@ -0,0 +1,12 @@
+--- src/subtle/ruby.c.orig	2012-06-20 11:29:55 UTC
++++ src/subtle/ruby.c
+@@ -2612,8 +2612,7 @@ RubyConfigLoadConfig(VALUE self,
+ 
+       if((dirs = getenv("XDG_CONFIG_DIRS")))
+         len += snprintf(tokens + len, sizeof(tokens), ":%s", dirs);
+-      else len += snprintf(tokens + len, sizeof(tokens), ":%s/%s",
+-        "/etc/xdg", PKG_NAME);
++      else len += snprintf(tokens + len, sizeof(tokens), ":%s", "/etc/xdg");
+ 
+       if((home = getenv("XDG_DATA_HOME")))
+         {

Added: head/x11-wm/subtle/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/x11-wm/subtle/pkg-descr	Wed Dec 28 07:25:34 2016	(r429718)
@@ -0,0 +1,14 @@
+subtle is a manual tiling window manager with a rather uncommon approach
+of tiling: instead of relying on predefined layouts, subtle divides the
+screen into a grid with customizeable slots (called gravities).  For better
+understanding, the default config uses a 3x3 grid and maps each gravity to
+one key of the numpad.  With those keys, windows can be moved directly to
+the desired gravity -- the same can be done with tagging rules in the
+config.
+
+Another unique concept is the strict tagging: Unlike other tiling window
+managers, subtle does not allow weak tagging and always maps windows to
+virtual desktops (called views) with matching tags, regardless of the
+current active view.
+
+WWW: http://subtle.subforge.org/

Added: head/x11-wm/subtle/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/x11-wm/subtle/pkg-plist	Wed Dec 28 07:25:34 2016	(r429718)
@@ -0,0 +1,18 @@
+bin/subtle
+bin/subtler
+bin/sur
+bin/surserver
+etc/xdg/subtle/subtle.rb
+%%RUBY_SITELIBDIR%%/subtle/subtler/runner.rb
+%%RUBY_SITELIBDIR%%/subtle/subtlext.so
+%%RUBY_SITELIBDIR%%/subtle/sur/client.rb
+%%RUBY_SITELIBDIR%%/subtle/sur/runner.rb
+%%RUBY_SITELIBDIR%%/subtle/sur/server.rb
+%%RUBY_SITELIBDIR%%/subtle/sur/specification.rb
+%%RUBY_SITELIBDIR%%/subtle/sur/test.rb
+%%RUBY_SITELIBDIR%%/subtle/sur/version.rb
+man/man1/subtle.1.gz
+man/man1/subtler.1.gz
+man/man1/subtlext.1.gz
+man/man1/sur.1.gz
+man/man1/surserver.1.gz



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