Add a port of subtle, grid-based manual tiling window manager.
WWW: http://subtle.subforge.org/
This commit is contained in:
parent
3810d538c6
commit
7a12aee4f2
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=429718
@ -106,6 +106,7 @@
|
||||
SUBDIR += selectwm
|
||||
SUBDIR += simple-ccsm
|
||||
SUBDIR += spectrwm
|
||||
SUBDIR += subtle
|
||||
SUBDIR += swm
|
||||
SUBDIR += tinywm
|
||||
SUBDIR += transset
|
||||
|
32
x11-wm/subtle/Makefile
Normal file
32
x11-wm/subtle/Makefile
Normal file
@ -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>
|
3
x11-wm/subtle/distinfo
Normal file
3
x11-wm/subtle/distinfo
Normal file
@ -0,0 +1,3 @@
|
||||
TIMESTAMP = 1482831730
|
||||
SHA256 (subtle-0.11.3224-xi.tbz2) = a22ee94a70c1105a018e1c0a754597b4e3a87d1b915301a0b22888920fa0f8a2
|
||||
SIZE (subtle-0.11.3224-xi.tbz2) = 144607
|
81
x11-wm/subtle/files/patch-Rakefile
Normal file
81
x11-wm/subtle/files/patch-Rakefile
Normal file
@ -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
|
||||
|
10
x11-wm/subtle/files/patch-src_shared_shared.h
Normal file
10
x11-wm/subtle/files/patch-src_shared_shared.h
Normal file
@ -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"
|
12
x11-wm/subtle/files/patch-src_subtle_ruby.c
Normal file
12
x11-wm/subtle/files/patch-src_subtle_ruby.c
Normal file
@ -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")))
|
||||
{
|
14
x11-wm/subtle/pkg-descr
Normal file
14
x11-wm/subtle/pkg-descr
Normal file
@ -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/
|
18
x11-wm/subtle/pkg-plist
Normal file
18
x11-wm/subtle/pkg-plist
Normal file
@ -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
|
Loading…
Reference in New Issue
Block a user