summaryrefslogtreecommitdiff
path: root/x11-wm
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /x11-wm
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'x11-wm')
-rw-r--r--x11-wm/aewm++/Manifest1
-rw-r--r--x11-wm/aewm++/aewm++-1.1.5-r1.ebuild35
-rw-r--r--x11-wm/aewm++/files/aewm++-1.1.5-gcc43.patch36
-rw-r--r--x11-wm/aewm++/files/aewm++-1.1.5-makefile.patch34
-rw-r--r--x11-wm/aewm++/metadata.xml15
-rw-r--r--x11-wm/aewm/Manifest1
-rw-r--r--x11-wm/aewm/aewm-1.3.12.ebuild52
-rw-r--r--x11-wm/aewm/files/aewm-1.3.12-gentoo.patch63
-rw-r--r--x11-wm/aewm/metadata.xml12
-rw-r--r--x11-wm/afterstep/Manifest2
-rw-r--r--x11-wm/afterstep/afterstep-2.2.11-r1.ebuild123
-rw-r--r--x11-wm/afterstep/afterstep-2.2.9.ebuild135
-rwxr-xr-xx11-wm/afterstep/files/afterstep2
-rw-r--r--x11-wm/afterstep/files/afterstep-2.2.11-configure.patch13
-rw-r--r--x11-wm/afterstep/files/afterstep-2.2.11-execinfo.patch84
-rw-r--r--x11-wm/afterstep/files/afterstep-2.2.9-alpha.patch15
-rw-r--r--x11-wm/afterstep/files/afterstep-2.2.9-ldflags.patch37
-rw-r--r--x11-wm/afterstep/files/afterstep-2.2.9-libpng15.patch31
-rw-r--r--x11-wm/afterstep/files/afterstep-2.2.9-make_session_data_file.patch14
-rw-r--r--x11-wm/afterstep/files/no-alternatives-2.2.9.patch29
-rw-r--r--x11-wm/afterstep/metadata.xml10
-rw-r--r--x11-wm/amiwm/Manifest1
-rw-r--r--x11-wm/amiwm/amiwm-0.21_p2.ebuild58
-rw-r--r--x11-wm/amiwm/files/amiwm-0.20_p48-flex.patch12
-rw-r--r--x11-wm/amiwm/files/amiwm-0.20_p48-gentoo.diff188
-rw-r--r--x11-wm/amiwm/files/amiwm-0.21_p2-gentoo.diff160
-rw-r--r--x11-wm/amiwm/files/amiwm-0.21_p2-implicts.patch73
-rw-r--r--x11-wm/amiwm/metadata.xml10
-rw-r--r--x11-wm/awesome/Manifest6
-rw-r--r--x11-wm/awesome/awesome-3.4.15.ebuild132
-rw-r--r--x11-wm/awesome/awesome-3.5.2-r1.ebuild128
-rw-r--r--x11-wm/awesome/awesome-3.5.2.ebuild128
-rw-r--r--x11-wm/awesome/awesome-3.5.3.ebuild129
-rw-r--r--x11-wm/awesome/awesome-3.5.4.ebuild132
-rw-r--r--x11-wm/awesome/awesome-3.5.5-r1.ebuild134
-rw-r--r--x11-wm/awesome/awesome-3.5.5.ebuild132
-rw-r--r--x11-wm/awesome/awesome-3.5.6.ebuild134
-rw-r--r--x11-wm/awesome/files/awesome-3.4.11-convert-path.patch18
-rw-r--r--x11-wm/awesome/files/awesome-3.4.2-backtrace.patch18
-rw-r--r--x11-wm/awesome/files/awesome-3.5.4-imagebox.patch28
-rw-r--r--x11-wm/awesome/files/awesome-3.5.5-cflag-cleanup.patch12
-rw-r--r--x11-wm/awesome/files/awesome-3.5.5-util.lua-xdg-icons-fix.patch46
-rw-r--r--x11-wm/awesome/files/awesome-3.5_rc1-convert-path.patch12
-rw-r--r--x11-wm/awesome/files/awesome-3.5_rc1-luadoc-fix-patch10
-rw-r--r--x11-wm/awesome/files/awesome-glib-fix.patch13
-rw-r--r--x11-wm/awesome/files/awesome-gnome-3.session3
-rw-r--r--x11-wm/awesome/files/awesome-gnome-xsession.desktop6
-rw-r--r--x11-wm/awesome/files/awesome-gnome.desktop8
-rw-r--r--x11-wm/awesome/files/awesome-gnome.session6
-rw-r--r--x11-wm/awesome/files/awesome-session90
-rw-r--r--x11-wm/awesome/files/awesome-xsession.patch9
-rw-r--r--x11-wm/awesome/files/awesome.desktop7
-rw-r--r--x11-wm/awesome/metadata.xml17
-rw-r--r--x11-wm/blackbox/Manifest1
-rw-r--r--x11-wm/blackbox/blackbox-0.70.1-r1.ebuild58
-rw-r--r--x11-wm/blackbox/blackbox-0.70.1.ebuild57
-rw-r--r--x11-wm/blackbox/files/blackbox-0.70.1-asneeded.patch49
-rw-r--r--x11-wm/blackbox/files/blackbox-0.70.1-gcc-4.3.patch106
-rw-r--r--x11-wm/blackbox/files/blackbox-0.70.1-no-LDFLAGS-pc.patch14
-rw-r--r--x11-wm/blackbox/files/blackbox.desktop7
-rw-r--r--x11-wm/blackbox/metadata.xml15
-rw-r--r--x11-wm/bspwm/Manifest2
-rw-r--r--x11-wm/bspwm/bspwm-0.8.8-r1.ebuild51
-rw-r--r--x11-wm/bspwm/bspwm-0.8.9.ebuild51
-rw-r--r--x11-wm/bspwm/files/bspwm-0.8.8-desktop.patch9
-rw-r--r--x11-wm/bspwm/files/bspwm-0.8.8-flags.patch15
-rw-r--r--x11-wm/bspwm/files/bspwm-session90
-rw-r--r--x11-wm/bspwm/metadata.xml11
-rw-r--r--x11-wm/compiz-fusion/compiz-fusion-0.8.8.ebuild27
-rw-r--r--x11-wm/compiz-fusion/metadata.xml12
-rw-r--r--x11-wm/compiz/Manifest1
-rw-r--r--x11-wm/compiz/compiz-0.8.8-r3.ebuild168
-rw-r--r--x11-wm/compiz/files/compiz-gcc-4.7.patch38
-rw-r--r--x11-wm/compiz/files/compiz-kde-4.10.patch30
-rw-r--r--x11-wm/compiz/files/compiz-kde-4.8.patch17
-rw-r--r--x11-wm/compiz/files/compiz-kde-4.9.patch196
-rw-r--r--x11-wm/compiz/files/compiz-manager384
-rw-r--r--x11-wm/compiz/files/compiz-no-gconf.patch20
-rw-r--r--x11-wm/compiz/files/compiz.desktop11
-rw-r--r--x11-wm/compiz/metadata.xml18
-rw-r--r--x11-wm/ctwm/Manifest3
-rw-r--r--x11-wm/ctwm/ctwm-3.7.ebuild56
-rw-r--r--x11-wm/ctwm/ctwm-3.8.2.ebuild82
-rw-r--r--x11-wm/ctwm/ctwm-3.8a-r1.ebuild73
-rw-r--r--x11-wm/ctwm/files/ctwm-3.6-r1-gentoo.diff55
-rw-r--r--x11-wm/ctwm/metadata.xml5
-rw-r--r--x11-wm/cwm/Manifest7
-rw-r--r--x11-wm/cwm/cwm-5.1.ebuild35
-rw-r--r--x11-wm/cwm/cwm-5.1_p20130728.ebuild41
-rw-r--r--x11-wm/cwm/cwm-5.5.ebuild43
-rw-r--r--x11-wm/cwm/cwm-5.6.ebuild43
-rw-r--r--x11-wm/cwm/cwm-9999.ebuild42
-rw-r--r--x11-wm/cwm/files/cwm-4.2_p20111229-Makefile.patch11
-rw-r--r--x11-wm/cwm/metadata.xml11
-rw-r--r--x11-wm/dwm/Manifest1
-rw-r--r--x11-wm/dwm/dwm-6.0.ebuild79
-rw-r--r--x11-wm/dwm/files/dwm-session211
-rw-r--r--x11-wm/dwm/files/dwm.desktop7
-rw-r--r--x11-wm/dwm/metadata.xml11
-rw-r--r--x11-wm/echinus/Manifest1
-rw-r--r--x11-wm/echinus/echinus-0.4.9.ebuild61
-rw-r--r--x11-wm/echinus/files/echinus-0.4.9-gentoo.diff68
-rw-r--r--x11-wm/echinus/files/echinus.desktop7
-rw-r--r--x11-wm/echinus/metadata.xml12
-rw-r--r--x11-wm/emerald/Manifest1
-rw-r--r--x11-wm/emerald/emerald-0.8.8.ebuild58
-rw-r--r--x11-wm/emerald/files/emerald-0.8.8-pkgconfig-pollution.patch12
-rw-r--r--x11-wm/emerald/metadata.xml6
-rw-r--r--x11-wm/enlightenment/Manifest17
-rw-r--r--x11-wm/enlightenment/enlightenment-0.16.9999.ebuild81
-rw-r--r--x11-wm/enlightenment/enlightenment-0.17.6.ebuild79
-rw-r--r--x11-wm/enlightenment/enlightenment-0.17.9999.ebuild92
-rw-r--r--x11-wm/enlightenment/enlightenment-0.18.7.ebuild92
-rw-r--r--x11-wm/enlightenment/enlightenment-0.18.8.ebuild92
-rw-r--r--x11-wm/enlightenment/enlightenment-0.19.4.ebuild92
-rw-r--r--x11-wm/enlightenment/enlightenment-0.19.8.ebuild92
-rw-r--r--x11-wm/enlightenment/enlightenment-1.0.10.ebuild82
-rw-r--r--x11-wm/enlightenment/enlightenment-1.0.11.ebuild81
-rw-r--r--x11-wm/enlightenment/enlightenment-1.0.13.ebuild81
-rw-r--r--x11-wm/enlightenment/enlightenment-1.0.14.ebuild81
-rw-r--r--x11-wm/enlightenment/enlightenment-1.0.15.ebuild80
-rw-r--r--x11-wm/enlightenment/enlightenment-1.0.16.ebuild80
-rw-r--r--x11-wm/enlightenment/enlightenment-1.0.17.ebuild80
-rw-r--r--x11-wm/enlightenment/enlightenment-1.0.2.ebuild81
-rw-r--r--x11-wm/enlightenment/enlightenment-1.0.6.ebuild82
-rw-r--r--x11-wm/enlightenment/enlightenment-1.0.7.ebuild82
-rw-r--r--x11-wm/enlightenment/enlightenment-1.0.8.ebuild82
-rw-r--r--x11-wm/enlightenment/enlightenment-1.0.9.ebuild82
-rw-r--r--x11-wm/enlightenment/files/gentoo-sysactions.conf76
-rw-r--r--x11-wm/enlightenment/files/quickstart.diff13
-rw-r--r--x11-wm/enlightenment/metadata.xml116
-rw-r--r--x11-wm/evilwm/Manifest2
-rw-r--r--x11-wm/evilwm/evilwm-1.0.1.ebuild46
-rw-r--r--x11-wm/evilwm/evilwm-1.1.0.ebuild47
-rw-r--r--x11-wm/evilwm/files/evilwm.desktop8
-rw-r--r--x11-wm/evilwm/metadata.xml10
-rw-r--r--x11-wm/fluxbox/Manifest4
-rw-r--r--x11-wm/fluxbox/files/1.3.5-generate_menu-printf-fix.patch22
-rw-r--r--x11-wm/fluxbox/files/fix-hidden-toolbar.patch92
-rw-r--r--x11-wm/fluxbox/files/fluxbox.desktop8
-rw-r--r--x11-wm/fluxbox/files/fluxbox.xsession90
-rw-r--r--x11-wm/fluxbox/files/gentoo_style_location-1.1.x.patch19
-rw-r--r--x11-wm/fluxbox/files/osx-has-otool.patch12
-rw-r--r--x11-wm/fluxbox/files/styles-menu-commonbox5
-rw-r--r--x11-wm/fluxbox/files/styles-menu-fluxbox5
-rw-r--r--x11-wm/fluxbox/files/styles-menu-user5
-rw-r--r--x11-wm/fluxbox/fluxbox-1.3.2.ebuild106
-rw-r--r--x11-wm/fluxbox/fluxbox-1.3.5-r1.ebuild113
-rw-r--r--x11-wm/fluxbox/fluxbox-1.3.5.ebuild108
-rw-r--r--x11-wm/fluxbox/fluxbox-1.3.6-r1.ebuild113
-rw-r--r--x11-wm/fluxbox/fluxbox-1.3.7-r1.ebuild112
-rw-r--r--x11-wm/fluxbox/fluxbox-1.3.7-r2.ebuild115
-rw-r--r--x11-wm/fluxbox/fluxbox-1.3.7.ebuild109
-rw-r--r--x11-wm/fluxbox/fluxbox-9999.ebuild114
-rw-r--r--x11-wm/fluxbox/metadata.xml29
-rw-r--r--x11-wm/fvwm/Manifest1
-rw-r--r--x11-wm/fvwm/files/README.translucency94
-rw-r--r--x11-wm/fvwm/files/fvwm-2.5.27-translucent-menus.diff528
-rw-r--r--x11-wm/fvwm/files/fvwm-2.6.5-ar.patch35
-rw-r--r--x11-wm/fvwm/files/fvwm-2.6.5-mouse-buttons.patch11
-rw-r--r--x11-wm/fvwm/fvwm-2.6.5.ebuild173
-rw-r--r--x11-wm/fvwm/metadata.xml22
-rw-r--r--x11-wm/goomwwm/Manifest1
-rw-r--r--x11-wm/goomwwm/goomwwm-1.0.0.ebuild44
-rw-r--r--x11-wm/goomwwm/metadata.xml9
-rw-r--r--x11-wm/herbstluftwm/Manifest1
-rw-r--r--x11-wm/herbstluftwm/herbstluftwm-0.6.2-r1.ebuild67
-rw-r--r--x11-wm/herbstluftwm/herbstluftwm-9999.ebuild67
-rw-r--r--x11-wm/herbstluftwm/metadata.xml8
-rw-r--r--x11-wm/i3/Manifest3
-rw-r--r--x11-wm/i3/files/i3-4.6-missing_include.patch15
-rw-r--r--x11-wm/i3/files/i3-4.7.2-cflags.patch16
-rw-r--r--x11-wm/i3/files/i3-4.7.2-parallel_make.patch45
-rw-r--r--x11-wm/i3/i3-4.10.3.ebuild73
-rw-r--r--x11-wm/i3/i3-4.8.ebuild73
-rw-r--r--x11-wm/i3/i3-4.9.1.ebuild73
-rw-r--r--x11-wm/i3/i3-9999.ebuild75
-rw-r--r--x11-wm/i3/metadata.xml16
-rw-r--r--x11-wm/icewm/Manifest3
-rw-r--r--x11-wm/icewm/files/IceWM.desktop8
-rwxr-xr-xx11-wm/icewm/files/icewm2
-rw-r--r--x11-wm/icewm/files/icewm-1.3.10-menu.patch22
-rw-r--r--x11-wm/icewm/files/icewm-1.3.7-dso.patch10
-rw-r--r--x11-wm/icewm/files/icewm-1.3.7-gcc44.patch13
-rw-r--r--x11-wm/icewm/files/icewm-1.3.7-menuiconsize.patch73
-rw-r--r--x11-wm/icewm/files/icewm-1.3.7-thermal.patch41
-rw-r--r--x11-wm/icewm/files/icewm-1.3.8-build-fixes.patch113
-rw-r--r--x11-wm/icewm/files/icewm-1.3.8-deprecated.patch12
-rw-r--r--x11-wm/icewm/files/icewm-1.3.8-menu.patch23
-rw-r--r--x11-wm/icewm/files/icewm-1.3.8-uclibc.patch64
-rw-r--r--x11-wm/icewm/files/icewm-1.3.9-fribidi.patch137
-rw-r--r--x11-wm/icewm/files/icewm-1.3.9-uclibc.patch64
-rw-r--r--x11-wm/icewm/files/icewm-defaults.patch13
-rw-r--r--x11-wm/icewm/files/icewm-fribidi.patch83
-rw-r--r--x11-wm/icewm/files/icewm-keys.patch43
-rw-r--r--x11-wm/icewm/files/icewm-startup4
-rw-r--r--x11-wm/icewm/files/icewm-toolbar.patch12
-rw-r--r--x11-wm/icewm/files/icewm-xdg-menu128
-rw-r--r--x11-wm/icewm/icewm-1.3.10.ebuild130
-rw-r--r--x11-wm/icewm/icewm-1.3.8.ebuild133
-rw-r--r--x11-wm/icewm/icewm-1.3.9.ebuild135
-rw-r--r--x11-wm/icewm/metadata.xml16
-rw-r--r--x11-wm/jwm/Manifest1
-rw-r--r--x11-wm/jwm/files/jwm-2.0.1-nostrip.patch10
-rw-r--r--x11-wm/jwm/jwm-2.1.0.ebuild70
-rw-r--r--x11-wm/jwm/metadata.xml5
-rw-r--r--x11-wm/larswm/Manifest1
-rw-r--r--x11-wm/larswm/files/larswm.desktop7
-rw-r--r--x11-wm/larswm/larswm-7.5.3-r1.ebuild55
-rw-r--r--x11-wm/larswm/metadata.xml13
-rw-r--r--x11-wm/lwm/Manifest3
-rw-r--r--x11-wm/lwm/lwm-1.2.1.ebuild34
-rw-r--r--x11-wm/lwm/lwm-1.2.2.ebuild45
-rw-r--r--x11-wm/lwm/lwm-1.2.3.ebuild48
-rw-r--r--x11-wm/lwm/metadata.xml10
-rw-r--r--x11-wm/marco/Manifest2
-rw-r--r--x11-wm/marco/marco-1.8.0.ebuild71
-rw-r--r--x11-wm/marco/marco-1.8.2.ebuild71
-rw-r--r--x11-wm/marco/metadata.xml8
-rw-r--r--x11-wm/matchbox-common/Manifest1
-rw-r--r--x11-wm/matchbox-common/files/MatchBox.desktop8
-rw-r--r--x11-wm/matchbox-common/files/add-media-category.patch37
-rw-r--r--x11-wm/matchbox-common/files/no-utilities-category.patch7
-rw-r--r--x11-wm/matchbox-common/matchbox-common-0.9.1-r2.ebuild43
-rw-r--r--x11-wm/matchbox-common/metadata.xml8
-rw-r--r--x11-wm/matchbox-desktop/Manifest1
-rw-r--r--x11-wm/matchbox-desktop/files/matchbox-desktop-0.9.1-dlopen.patch11
-rw-r--r--x11-wm/matchbox-desktop/matchbox-desktop-0.9.1.ebuild42
-rw-r--r--x11-wm/matchbox-desktop/metadata.xml8
-rw-r--r--x11-wm/matchbox-panel/Manifest1
-rw-r--r--x11-wm/matchbox-panel/files/matchbox-panel-0.9.3-gcc4-no-nested-functions.patch93
-rw-r--r--x11-wm/matchbox-panel/files/matchbox-panel-0.9.3-wifi.patch43
-rw-r--r--x11-wm/matchbox-panel/matchbox-panel-0.9.3-r1.ebuild52
-rw-r--r--x11-wm/matchbox-panel/metadata.xml9
-rw-r--r--x11-wm/matchbox-window-manager/Manifest1
-rw-r--r--x11-wm/matchbox-window-manager/files/matchbox-window-manager-1.0-use-nopng.patch27
-rw-r--r--x11-wm/matchbox-window-manager/matchbox-window-manager-1.2-r1.ebuild48
-rw-r--r--x11-wm/matchbox-window-manager/metadata.xml5
-rw-r--r--x11-wm/matchbox/matchbox-1.0.ebuild30
-rw-r--r--x11-wm/matchbox/metadata.xml5
-rw-r--r--x11-wm/matwm2/Manifest1
-rw-r--r--x11-wm/matwm2/files/matwm2-0.0.96-Makefile.patch23
-rw-r--r--x11-wm/matwm2/files/matwm2.desktop5
-rw-r--r--x11-wm/matwm2/matwm2-0.1.1.ebuild56
-rw-r--r--x11-wm/matwm2/metadata.xml5
-rw-r--r--x11-wm/metadata.xml35
-rw-r--r--x11-wm/muffin/Manifest3
-rw-r--r--x11-wm/muffin/metadata.xml8
-rw-r--r--x11-wm/muffin/muffin-2.4.4.ebuild84
-rw-r--r--x11-wm/muffin/muffin-2.4.5.ebuild84
-rw-r--r--x11-wm/muffin/muffin-2.6.1.ebuild87
-rw-r--r--x11-wm/musca/Manifest1
-rw-r--r--x11-wm/musca/files/musca-0.9.24-make.patch23
-rw-r--r--x11-wm/musca/files/musca-0.9.24_p20100226-dmenu-4.4.patch44
-rw-r--r--x11-wm/musca/files/musca-0.9.24_p20100226-fix-cycle.patch11
-rw-r--r--x11-wm/musca/files/musca-0.9.24_p20100226-fix-pad.patch21
-rw-r--r--x11-wm/musca/files/musca-0.9.24_p20100226-null.patch151
-rw-r--r--x11-wm/musca/files/musca.xsession2
-rw-r--r--x11-wm/musca/metadata.xml15
-rw-r--r--x11-wm/musca/musca-0.9.24_p20100226-r3.ebuild66
-rw-r--r--x11-wm/musca/musca-0.9.24_p20100226-r4.ebuild67
-rw-r--r--x11-wm/mutter/Manifest3
-rw-r--r--x11-wm/mutter/files/mutter-3.14.2-automagic.patch90
-rw-r--r--x11-wm/mutter/files/mutter-3.16.2-size-unredirected.patch151
-rw-r--r--x11-wm/mutter/files/mutter-3.2.1-ignore-shadow-and-padding.patch91
-rw-r--r--x11-wm/mutter/metadata.xml8
-rw-r--r--x11-wm/mutter/mutter-3.14.4.ebuild102
-rw-r--r--x11-wm/mutter/mutter-3.16.2-r1.ebuild97
-rw-r--r--x11-wm/mutter/mutter-3.16.2.ebuild91
-rw-r--r--x11-wm/mutter/mutter-3.16.3.ebuild91
-rw-r--r--x11-wm/notion/Manifest2
-rw-r--r--x11-wm/notion/files/notion2
-rw-r--r--x11-wm/notion/files/notion-3_p2015061300-pkg-config.patch76
-rw-r--r--x11-wm/notion/files/notion.desktop8
-rw-r--r--x11-wm/notion/metadata.xml12
-rw-r--r--x11-wm/notion/notion-3_p2013030200.ebuild84
-rw-r--r--x11-wm/notion/notion-3_p2015061300-r1.ebuild89
-rw-r--r--x11-wm/notion/notion-9999.ebuild87
-rw-r--r--x11-wm/openbox/Manifest4
-rw-r--r--x11-wm/openbox/files/openbox-3.5.2-gnome-session.patch14
-rw-r--r--x11-wm/openbox/metadata.xml22
-rw-r--r--x11-wm/openbox/openbox-3.5.2-r1.ebuild105
-rw-r--r--x11-wm/openbox/openbox-3.6.1.ebuild105
-rw-r--r--x11-wm/openbox/openbox-3.6.ebuild105
-rw-r--r--x11-wm/openbox/openbox-9999.ebuild104
-rw-r--r--x11-wm/oroborus/Manifest1
-rw-r--r--x11-wm/oroborus/files/oroborus.desktop10
-rw-r--r--x11-wm/oroborus/metadata.xml11
-rw-r--r--x11-wm/oroborus/oroborus-2.0.20.ebuild38
-rw-r--r--x11-wm/pekwm/Manifest2
-rw-r--r--x11-wm/pekwm/metadata.xml24
-rw-r--r--x11-wm/pekwm/pekwm-0.1.17.ebuild82
-rw-r--r--x11-wm/plwm/Manifest2
-rw-r--r--x11-wm/plwm/files/plwm-2.5-destdir.patch33
-rw-r--r--x11-wm/plwm/files/plwm-2.5-pep0263.patch8
-rw-r--r--x11-wm/plwm/files/plwm-2.5-python2.5.patch21
-rw-r--r--x11-wm/plwm/files/plwm-2.6_alpha-pep0263.patch17
-rw-r--r--x11-wm/plwm/files/plwm-2.6_alpha-python2.5.patch21
-rw-r--r--x11-wm/plwm/files/plwm-2.6_alpha.patch27
-rw-r--r--x11-wm/plwm/files/plwm-2.7_rc1-pep0263.patch17
-rw-r--r--x11-wm/plwm/metadata.xml15
-rw-r--r--x11-wm/plwm/plwm-2.5-r1.ebuild47
-rw-r--r--x11-wm/plwm/plwm-2.7_rc1-r1.ebuild51
-rw-r--r--x11-wm/plwm/plwm-2.7_rc1.ebuild54
-rw-r--r--x11-wm/qtile/Manifest7
-rw-r--r--x11-wm/qtile/files/qtile-session89
-rw-r--r--x11-wm/qtile/metadata.xml11
-rw-r--r--x11-wm/qtile/qtile-0.10.0.ebuild56
-rw-r--r--x11-wm/qtile/qtile-0.10.1.ebuild56
-rw-r--r--x11-wm/qtile/qtile-0.5-r1.ebuild53
-rw-r--r--x11-wm/qtile/qtile-0.6.ebuild53
-rw-r--r--x11-wm/qtile/qtile-0.7.0.ebuild58
-rw-r--r--x11-wm/qtile/qtile-0.8.0.ebuild58
-rw-r--r--x11-wm/qtile/qtile-0.9.1-r1.ebuild56
-rw-r--r--x11-wm/qtile/qtile-9999.ebuild56
-rw-r--r--x11-wm/ratpoison/Manifest1
-rw-r--r--x11-wm/ratpoison/files/50ratpoison-gentoo.el10
-rw-r--r--x11-wm/ratpoison/files/ratpoison.desktop7
-rw-r--r--x11-wm/ratpoison/files/ratpoison.el-gentoo.patch11
-rw-r--r--x11-wm/ratpoison/files/ratpoison.xsession1
-rw-r--r--x11-wm/ratpoison/metadata.xml22
-rw-r--r--x11-wm/ratpoison/ratpoison-1.4.8.ebuild92
-rw-r--r--x11-wm/ratpoison/ratpoison-9999.ebuild94
-rw-r--r--x11-wm/sawfish/Manifest1
-rw-r--r--x11-wm/sawfish/files/50sawfish-gentoo.el7
-rw-r--r--x11-wm/sawfish/files/sawfish-1.9.1-firefox.patch20
-rw-r--r--x11-wm/sawfish/metadata.xml13
-rw-r--r--x11-wm/sawfish/sawfish-1.9.1-r2.ebuild78
-rw-r--r--x11-wm/selectwm/Manifest1
-rw-r--r--x11-wm/selectwm/files/selectwm-0.4.1-enable-deprecated-gtk.patch11
-rw-r--r--x11-wm/selectwm/files/selectwm-0.4.1-glibc-2.10.patch21
-rw-r--r--x11-wm/selectwm/files/selectwm-0.4.1-nostrip.patch15
-rw-r--r--x11-wm/selectwm/metadata.xml5
-rw-r--r--x11-wm/selectwm/selectwm-0.4.1.ebuild38
-rw-r--r--x11-wm/sithwm/Manifest1
-rw-r--r--x11-wm/sithwm/files/sithwm-1.2.3-warnings.patch34
-rw-r--r--x11-wm/sithwm/metadata.xml13
-rw-r--r--x11-wm/sithwm/sithwm-1.2.3.ebuild29
-rw-r--r--x11-wm/spectrwm/Manifest2
-rw-r--r--x11-wm/spectrwm/files/spectrwm-2.0.2-makefile.patch23
-rw-r--r--x11-wm/spectrwm/files/spectrwm-2.1.0-makefile.patch23
-rw-r--r--x11-wm/spectrwm/files/spectrwm-2.3.0-Makefile.patch36
-rw-r--r--x11-wm/spectrwm/files/spectrwm-2.4.0-Makefile.patch17
-rw-r--r--x11-wm/spectrwm/files/spectrwm-2.5.0-Makefile.patch20
-rw-r--r--x11-wm/spectrwm/files/spectrwm-2.6.2-Makefile.patch11
-rw-r--r--x11-wm/spectrwm/files/spectrwm.desktop7
-rw-r--r--x11-wm/spectrwm/metadata.xml9
-rw-r--r--x11-wm/spectrwm/spectrwm-2.6.2.ebuild45
-rw-r--r--x11-wm/spectrwm/spectrwm-2.7.2.ebuild47
-rw-r--r--x11-wm/stumpwm/Manifest1
-rw-r--r--x11-wm/stumpwm/files/70stumpwm-gentoo.el2
-rw-r--r--x11-wm/stumpwm/files/README.Gentoo56
-rw-r--r--x11-wm/stumpwm/metadata.xml30
-rw-r--r--x11-wm/stumpwm/stumpwm-0.9.9.ebuild83
-rw-r--r--x11-wm/stumpwm/stumpwm-9999.ebuild48
-rw-r--r--x11-wm/subtle/Manifest1
-rw-r--r--x11-wm/subtle/metadata.xml26
-rw-r--r--x11-wm/subtle/subtle-0.11.3244.ebuild89
-rw-r--r--x11-wm/subtle/subtle-9999.ebuild89
-rw-r--r--x11-wm/treewm/Manifest1
-rw-r--r--x11-wm/treewm/files/treewm-0.4.5-gcc43.patch20
-rw-r--r--x11-wm/treewm/metadata.xml12
-rw-r--r--x11-wm/treewm/treewm-0.4.5-r1.ebuild61
-rw-r--r--x11-wm/treewm/treewm-0.4.5.ebuild42
-rw-r--r--x11-wm/twm/Manifest2
-rw-r--r--x11-wm/twm/metadata.xml5
-rw-r--r--x11-wm/twm/twm-1.0.8.ebuild22
-rw-r--r--x11-wm/twm/twm-1.0.9.ebuild22
-rw-r--r--x11-wm/vtwm/Manifest2
-rw-r--r--x11-wm/vtwm/files/vtwm-5.4.7-NO_SOUND_SUPPORT.patch35
-rw-r--r--x11-wm/vtwm/files/vtwm-5.4.7-do-not-rm.patch45
-rw-r--r--x11-wm/vtwm/metadata.xml14
-rw-r--r--x11-wm/vtwm/vtwm-5.4.6a.ebuild42
-rw-r--r--x11-wm/vtwm/vtwm-5.4.7-r1.ebuild73
-rw-r--r--x11-wm/windowlab/Manifest2
-rw-r--r--x11-wm/windowlab/files/windowlab-1.34-fixed-font.patch11
-rw-r--r--x11-wm/windowlab/files/windowlab-1.40-gentoo.diff53
-rw-r--r--x11-wm/windowlab/metadata.xml17
-rw-r--r--x11-wm/windowlab/windowlab-1.34.ebuild55
-rw-r--r--x11-wm/windowlab/windowlab-1.40.ebuild53
-rw-r--r--x11-wm/windowmaker/Manifest5
-rw-r--r--x11-wm/windowmaker/files/windowmaker-0.95.3-fix_underlinking.patch15
-rw-r--r--x11-wm/windowmaker/files/windowmaker-0.95.5-bsd_crash.patch28
-rw-r--r--x11-wm/windowmaker/files/windowmaker-0.95.6-webp_detection.patch70
-rw-r--r--x11-wm/windowmaker/files/wmaker.desktop7
-rw-r--r--x11-wm/windowmaker/metadata.xml14
-rw-r--r--x11-wm/windowmaker/windowmaker-0.92.0-r11.ebuild185
-rw-r--r--x11-wm/windowmaker/windowmaker-0.95.5-r1.ebuild109
-rw-r--r--x11-wm/windowmaker/windowmaker-0.95.6.ebuild112
-rw-r--r--x11-wm/windowmaker/windowmaker-9999.ebuild113
-rw-r--r--x11-wm/wm2/Manifest1
-rw-r--r--x11-wm/wm2/files/wm2-4-gentoo.patch146
-rw-r--r--x11-wm/wm2/metadata.xml5
-rw-r--r--x11-wm/wm2/wm2-4-r1.ebuild57
-rw-r--r--x11-wm/wmfs/Manifest1
-rw-r--r--x11-wm/wmfs/files/wmfs-201003-desktop.patch9
-rw-r--r--x11-wm/wmfs/files/wmfs-201003-pthread.patch12
-rw-r--r--x11-wm/wmfs/files/wmfs-99999999-desktop.patch8
-rw-r--r--x11-wm/wmfs/metadata.xml13
-rw-r--r--x11-wm/wmfs/wmfs-201003.ebuild42
-rw-r--r--x11-wm/wmfs/wmfs-99999999.ebuild58
-rw-r--r--x11-wm/wmii/Manifest1
-rw-r--r--x11-wm/wmii/files/wmii.desktop7
-rw-r--r--x11-wm/wmii/metadata.xml14
-rw-r--r--x11-wm/wmii/wmii-3.9.2-r4.ebuild79
-rw-r--r--x11-wm/xmonad-contrib/Manifest2
-rw-r--r--x11-wm/xmonad-contrib/files/xmonad-contrib-0.11.2-ghc-7.8.patch23
-rw-r--r--x11-wm/xmonad-contrib/files/xmonad-contrib-0.11.4-import-Applicative.patch21
-rw-r--r--x11-wm/xmonad-contrib/metadata.xml23
-rw-r--r--x11-wm/xmonad-contrib/xmonad-contrib-0.11.2.ebuild42
-rw-r--r--x11-wm/xmonad-contrib/xmonad-contrib-0.11.4.ebuild51
-rw-r--r--x11-wm/xmonad/Manifest2
-rw-r--r--x11-wm/xmonad/files/xmonad-0.11-ghc-7.10.patch14
-rw-r--r--x11-wm/xmonad/files/xmonad-0.11-sample.patch74
-rw-r--r--x11-wm/xmonad/files/xmonad-check-repeat.patch40
-rw-r--r--x11-wm/xmonad/files/xmonad.desktop7
-rw-r--r--x11-wm/xmonad/metadata.xml21
-rw-r--r--x11-wm/xmonad/xmonad-0.11-r1.ebuild73
-rw-r--r--x11-wm/xmonad/xmonad-0.11-r3.ebuild80
-rw-r--r--x11-wm/xmonad/xmonad-0.11.1.ebuild80
-rw-r--r--x11-wm/xpra/Manifest6
-rw-r--r--x11-wm/xpra/files/xpra-0.10.1-prefix.patch30
-rw-r--r--x11-wm/xpra/files/xpra-0.10.12-launcher.patch10
-rw-r--r--x11-wm/xpra/files/xpra-0.12.0-prefix.patch27
-rw-r--r--x11-wm/xpra/files/xpra-0.13.1-ignore-gentoo-no-compile.patch11
-rw-r--r--x11-wm/xpra/files/xpra-0.14.0-prefix.patch27
-rw-r--r--x11-wm/xpra/files/xpra-0.15.0-prefix.patch27
-rw-r--r--x11-wm/xpra/files/xpra-0.7.1-ignore-gentoo-no-compile.patch11
-rw-r--r--x11-wm/xpra/metadata.xml23
-rw-r--r--x11-wm/xpra/xpra-0.11.6.ebuild105
-rw-r--r--x11-wm/xpra/xpra-0.12.7.ebuild105
-rw-r--r--x11-wm/xpra/xpra-0.13.9.ebuild106
-rw-r--r--x11-wm/xpra/xpra-0.14.27.ebuild121
-rw-r--r--x11-wm/xpra/xpra-0.15.3.ebuild115
-rw-r--r--x11-wm/xpra/xpra-0.15.4.ebuild115
435 files changed, 19331 insertions, 0 deletions
diff --git a/x11-wm/aewm++/Manifest b/x11-wm/aewm++/Manifest
new file mode 100644
index 000000000000..7c042667a89d
--- /dev/null
+++ b/x11-wm/aewm++/Manifest
@@ -0,0 +1 @@
+DIST aewm++-1.1.5.tar.gz 24553 SHA256 10603da6e6ef1e2c8377dce03117fed3270a7fe87accbfe54461b80e5371ea36
diff --git a/x11-wm/aewm++/aewm++-1.1.5-r1.ebuild b/x11-wm/aewm++/aewm++-1.1.5-r1.ebuild
new file mode 100644
index 000000000000..92362546fc49
--- /dev/null
+++ b/x11-wm/aewm++/aewm++-1.1.5-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=2
+inherit eutils toolchain-funcs
+
+DESCRIPTION="A window manager with more modern features than aewm but with the same look and feel"
+HOMEPAGE="http://github.com/frankhale/aewmpp"
+SRC_URI="mirror://gentoo/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND="x11-libs/libX11
+ x11-libs/libXext"
+DEPEND="${RDEPEND}
+ x11-proto/xextproto
+ x11-proto/xproto"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gcc43.patch \
+ "${FILESDIR}"/${P}-makefile.patch
+}
+
+src_compile() {
+ emake CXX="$(tc-getCXX)" || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+ dodoc ChangeLog README || die
+}
diff --git a/x11-wm/aewm++/files/aewm++-1.1.5-gcc43.patch b/x11-wm/aewm++/files/aewm++-1.1.5-gcc43.patch
new file mode 100644
index 000000000000..23cacdc43a2b
--- /dev/null
+++ b/x11-wm/aewm++/files/aewm++-1.1.5-gcc43.patch
@@ -0,0 +1,36 @@
+diff -ur aewm++-1.1.5.orig/client.cc aewm++-1.1.5/client.cc
+--- aewm++-1.1.5.orig/client.cc 2005-05-23 06:06:01.000000000 +0300
++++ aewm++-1.1.5/client.cc 2008-05-03 23:50:02.000000000 +0300
+@@ -6,6 +6,8 @@
+ */
+ #include "aewm.hh"
+
++#include <string.h>
++
+ Client::Client(Display *d, Window new_client)
+ {
+ initialize(d);
+diff -ur aewm++-1.1.5.orig/main.cc aewm++-1.1.5/main.cc
+--- aewm++-1.1.5.orig/main.cc 2005-02-12 05:38:32.000000000 +0200
++++ aewm++-1.1.5/main.cc 2008-05-03 23:50:02.000000000 +0300
+@@ -6,6 +6,8 @@
+ */
+ #include "aewm.hh"
+
++#include <string.h>
++
+ // Dunno where I ripped this from. Kudos to the author whoever he is!
+ void forkExec(char *cmd)
+ {
+diff -ur aewm++-1.1.5.orig/windowmanager.cc aewm++-1.1.5/windowmanager.cc
+--- aewm++-1.1.5.orig/windowmanager.cc 2005-05-17 04:41:42.000000000 +0300
++++ aewm++-1.1.5/windowmanager.cc 2008-05-03 23:50:02.000000000 +0300
+@@ -6,6 +6,8 @@
+ */
+ #include "aewm.hh"
+
++#include <string.h>
++
+ WindowManager* wm;
+
+ #define AEWM_KEY_ALT_COUNT 4
diff --git a/x11-wm/aewm++/files/aewm++-1.1.5-makefile.patch b/x11-wm/aewm++/files/aewm++-1.1.5-makefile.patch
new file mode 100644
index 000000000000..8b84a9963469
--- /dev/null
+++ b/x11-wm/aewm++/files/aewm++-1.1.5-makefile.patch
@@ -0,0 +1,34 @@
+Respect CFLAGS, LDFLAGS, don't strip binaries
+
+http://bugs.gentoo.org/show_bug.cgi?id=336099
+
+--- aewm++-1.1.5/Makefile
++++ aewm++-1.1.5/Makefile
+@@ -1,9 +1,6 @@
+ CC = g++
+-ADDITIONAL_CFLAGS = -g -O2 -march=i686 -Wall
+
+ prefix = /usr
+-INCLUDES = -I$/usr/X11R6
+-LDPATH = -L/usr/X11R6/lib
+ LIBS = -lXext -lX11
+
+ # SHAPE = Shape Extension
+@@ -28,14 +25,13 @@
+ all: aewm++
+
+ aewm++: $(OBJS)
+- $(CC) $(OBJS) $(LDPATH) $(LIBS) -o $@
++ $(CXX) $(LDFLAGS) $(OBJS) $(LDPATH) $(LIBS) -o $@
+
+ $(OBJS): %.o: %.cc $(HEADERS)
+- $(CC) $(CFLAGS) $(ADDITIONAL_CFLAGS) $(DEFINES) $(INCLUDES) -c $< -o $@
++ $(CXX) $(CXXFLAGS) $(DEFINES) $(INCLUDES) -c $< -o $@
+
+ install: all
+- mkdir -p $(DESTDIR)$(prefix)/bin
+- install -s aewm++ $(DESTDIR)$(prefix)/bin
++ install -D -m 755 aewm++ $(DESTDIR)$(prefix)/bin/aewm++
+
+ clean:
+ rm -f aewm++ $(OBJS) core
diff --git a/x11-wm/aewm++/metadata.xml b/x11-wm/aewm++/metadata.xml
new file mode 100644
index 000000000000..dda5ad35c2df
--- /dev/null
+++ b/x11-wm/aewm++/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ </maintainer>
+ <longdescription>
+ The aewm++ window manager is a fork of the popular minimal window manager
+ aewm for the X Windows System. What makes it different is its codebase,
+ feature set and focus.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">frankhale/aewmpp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/x11-wm/aewm/Manifest b/x11-wm/aewm/Manifest
new file mode 100644
index 000000000000..09cacc9dd655
--- /dev/null
+++ b/x11-wm/aewm/Manifest
@@ -0,0 +1 @@
+DIST aewm-1.3.12.tar.bz2 36677 SHA256 20edc3e57630fe2e0ca6139ce5769bd10a149f59a16f45acdf9bc64268fd59de SHA512 69435edf1ba99661464221070ab6708a875056d244ee73b2eba1ed2beefba52ac2418d37e0d8b9f0c7c8a382e9d8740215b9c7098eca4f39cdf73b3c894125f1 WHIRLPOOL 077486fa4bcf46247915b40ed483c753c11ae1faa8b01b783bfe758d35f4d113cb99626ddea9afdb855358d44042e30e490389c12fb9ee3b8e3c37ada89279ed
diff --git a/x11-wm/aewm/aewm-1.3.12.ebuild b/x11-wm/aewm/aewm-1.3.12.ebuild
new file mode 100644
index 000000000000..bd4b3c03176a
--- /dev/null
+++ b/x11-wm/aewm/aewm-1.3.12.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils toolchain-funcs
+
+DESCRIPTION="A minimalistic X11 window manager"
+HOMEPAGE="http://www.red-bean.com/~decklin/software/aewm/"
+SRC_URI="${HOMEPAGE}${P}.tar.bz2"
+
+LICENSE="MIT 9wm"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~x86-fbsd"
+
+RDEPEND="
+ dev-libs/glib:2
+ x11-libs/gtk+:2
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXft
+"
+DEPEND="
+ ${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xproto
+"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gentoo.patch
+ sed -i -e '/^font/s|".*"|"fixed"|g' doc/aewmrc.ex || die
+ sed -i -e 's|skill|pkill|g' doc/clientsrc.ex || die
+}
+
+src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ PKG_CONFIG="$(tc-getPKG_CONFIG)"
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ MANDIR="${D}/usr/share/man/man1" \
+ XROOT="/usr" \
+ install
+
+ dodoc NEWS README
+}
diff --git a/x11-wm/aewm/files/aewm-1.3.12-gentoo.patch b/x11-wm/aewm/files/aewm-1.3.12-gentoo.patch
new file mode 100644
index 000000000000..6cc02f4560d6
--- /dev/null
+++ b/x11-wm/aewm/files/aewm-1.3.12-gentoo.patch
@@ -0,0 +1,63 @@
+--- a/Makefile
++++ b/Makefile
+@@ -6,12 +6,12 @@
+ XROOT = /usr/X11R6
+
+ # Uncomment to enable Shape extension support
+-#OPT_WMFLAGS += -DSHAPE
++OPT_WMFLAGS += -DSHAPE
+ #OPT_WMLIB += -lXext
+
+ # Uncomment to add Xft support
+-#OPT_WMFLAGS += -DXFT `pkg-config --cflags xft`
+-#OPT_WMLIB += `pkg-config --libs xft` -lXext
++OPT_WMFLAGS += -DXFT $(shell $(PKG_CONFIG) --cflags xft xext)
++OPT_WMLIB += $(shell $(PKG_CONFIG) --libs xft xext)
+
+ # Uncomment for debugging (abandon all hope, ye who enter here)
+ #OPT_WMFLAGS += -DDEBUG
+@@ -46,7 +46,7 @@
+
+ X11FLAGS = -I$(XROOT)/include
+ WMFLAGS = $(X11FLAGS) $(OPT_WMFLAGS)
+-GTKFLAGS = `pkg-config --cflags gtk+-2.0`
++GTKFLAGS = $(shell $(PKG_CONFIG) --cflags gtk+-2.0)
+
+ $(PLAINOBJ): %.o: %.c
+ $(CC) $(CFLAGS) -c $< -o $@
+@@ -60,28 +60,28 @@
+ $(GTKOBJ): %.o: %.c
+ $(CC) $(CFLAGS) $(GTKFLAGS) -c $< -o $@
+
+-X11LIB = -L$(XROOT)/lib -lX11
++X11LIB = $(shell $(PKG_CONFIG) --libs x11)
+ WMLIB = $(X11LIB) $(OPT_WMLIB)
+-GTKLIB = `pkg-config --libs gtk+-2.0`
++GTKLIB = $(shell $(PKG_CONFIG) --libs gtk+-2.0)
+
+ $(PLAINBIN): %: %.o
+- $(CC) $^ -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) $^ -o $@
+
+ $(X11BIN): %: %.o
+- $(CC) $^ $(X11LIB) -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) $^ $(X11LIB) -o $@
+
+ $(WMBIN): %:
+- $(CC) $^ $(WMLIB) -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) $^ $(WMLIB) -o $@
+
+ $(GTKBIN): %: %.o
+- $(CC) $^ $(GTKLIB) -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) $^ $(GTKLIB) $(X11LIB) -o $@
+
+ AEMAN = aewm.1x aeclients.1x
+ AERC = aewmrc clientsrc
+
+ install: all
+ mkdir -p $(BINDIR) $(MANDIR) $(CFGDIR)
+- install -s $(ALLBIN) $(BINDIR)
++ install $(ALLBIN) $(BINDIR)
+ for i in $(AEMAN); do \
+ install -m 644 doc/$$i $(MANDIR); \
+ gzip -9 $(MANDIR)/$$i; \
diff --git a/x11-wm/aewm/metadata.xml b/x11-wm/aewm/metadata.xml
new file mode 100644
index 000000000000..aeb17f4fb96a
--- /dev/null
+++ b/x11-wm/aewm/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>jer@gentoo.org</email></maintainer>
+ <longdescription>
+ aewm is a minimalist window manager for X11. It has no nifty features,
+ but is light on resources and extremely simple in appearance. It should
+ eventually make a good reference implementation of the ICCCM. A few
+ separate programs are included to handle running programs, switching
+ between windows, etc.
+ </longdescription>
+</pkgmetadata>
diff --git a/x11-wm/afterstep/Manifest b/x11-wm/afterstep/Manifest
new file mode 100644
index 000000000000..a133cbb0c621
--- /dev/null
+++ b/x11-wm/afterstep/Manifest
@@ -0,0 +1,2 @@
+DIST AfterStep-2.2.11.tar.bz2 6126237 SHA256 ca7e872fc4d8320899667087d934e0672a3f38264a5207ea314d3c20242903aa SHA512 cf6663427656162f20cce596f63c7368c66fb336d5865dda5127f5aae123c61d647444336cc4c339ae6c64e5f25e837c0ba8889d30b1298ef26569505e0ff3d9 WHIRLPOOL 057d2420776be19db7ddf69ca7a7a2dae570dcca3b9fad4e56e8c9b4268d1f6c5dc6cbcc45b6caab41b3c06dcf7efe2b06289cf2684ac22a3dc2879282ff898f
+DIST AfterStep-2.2.9.tar.bz2 6094706 SHA256 678493cd3ec44eee219d65fee0e612f2d1e36f8b93cbabdf40a22133c0617148
diff --git a/x11-wm/afterstep/afterstep-2.2.11-r1.ebuild b/x11-wm/afterstep/afterstep-2.2.11-r1.ebuild
new file mode 100644
index 000000000000..d65792701cc3
--- /dev/null
+++ b/x11-wm/afterstep/afterstep-2.2.11-r1.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils flag-o-matic
+
+DESCRIPTION="A feature rich NeXTish window manager"
+HOMEPAGE="http://www.afterstep.org/"
+SRC_URI="ftp://ftp.afterstep.org/stable/AfterStep-${PV}.tar.bz2
+ mirror://sourceforge/${PN}/AfterStep-${PV}.tar.bz2"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="alsa debug dbus gif gtk jpeg cpu_flags_x86_mmx nls png svg tiff xinerama"
+
+RDEPEND="media-libs/freetype
+ alsa? ( media-libs/alsa-lib )
+ dbus? ( sys-apps/dbus )
+ jpeg? ( virtual/jpeg )
+ gif? ( >=media-libs/giflib-4.1.0 )
+ gtk? ( x11-libs/gtk+:2 )
+ png? ( media-libs/libpng:0= )
+ svg? ( gnome-base/librsvg:2 )
+ tiff? ( media-libs/tiff:0 )
+ x11-libs/libICE
+ x11-libs/libXext
+ x11-libs/libSM
+ x11-libs/libXmu
+ x11-libs/libXt
+ x11-libs/libX11
+ x11-libs/libXpm
+ x11-libs/libXrender
+ xinerama? ( x11-libs/libXinerama )"
+DEPEND="${RDEPEND}
+ !!media-libs/libafterimage
+ x11-proto/xextproto
+ x11-proto/xproto
+ xinerama? ( x11-proto/xineramaproto )"
+
+S=${WORKDIR}/AfterStep-${PV}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2.2.9-{alpha,ldflags,libpng15}.patch
+ epatch "${FILESDIR}"/${PN}-2.2.11-{execinfo,configure}.patch
+
+ sed -i -e '/^install:/s:install.alternative ::' Makefile.in || die
+ sed -i -e '/CFLAGS="-O3"/d' libAfter{Base,Image}/configure || die
+ sed -i -e '/STRIP_BINARIES/s:-s::' autoconf/configure.in || die #252119
+ sed -i -e '/--with-builtin-gif/s/$with_gif/no/' autoconf/configure.in || die #253259
+
+ pushd autoconf >/dev/null
+ eautoreconf
+ cp autoconf/config.h.in ./ || die
+ cp configure ../ || die
+ popd >/dev/null
+
+ pushd libAfterBase >/dev/null
+ eautoreconf
+ popd >/dev/null
+}
+
+src_configure() {
+ local myconf
+
+ use debug && myconf="--enable-gdb --enable-warn --enable-gprof
+ --enable-audit --enable-trace --enable-trace-x"
+
+ # Explanation of configure options
+ # ================================
+ # --with-helpcommand="xterm -e man" - Avoid installing xiterm
+ # --with-xpm - Contained in xfree
+ # --disable-availability - So we can use complete paths for menuitems
+ # --enable-ascp - The AfterStep ControlPanel is abandoned
+ # LDCONFIG - bug #265841
+
+ LDCONFIG=/bin/true econf \
+ $(use_enable alsa) \
+ $(use_enable cpu_flags_x86_mmx mmx-optimization) \
+ $(use_enable nls i18n) \
+ $(use_enable xinerama) \
+ $(use_with dbus dbus1) \
+ $(use_with gif) \
+ $(use_with gtk) \
+ $(use_with jpeg) \
+ $(use_with png) \
+ $(use_with tiff) \
+ $(use_with svg) \
+ --with-helpcommand="xterm -e man" \
+ --disable-availability \
+ --disable-staticlibs \
+ --enable-ascp=no \
+ ${myconf}
+}
+
+src_compile() {
+ # gcc: ../libAfterConf/libAfterConf.a: No such file or directory
+ # make[1]: *** [PrintDesktopEntries] Error 1
+ emake -j1
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ # Create a symlink from MonitorWharf to Wharf
+ rm "${D}"/usr/bin/MonitorWharf
+ dosym /usr/bin/Wharf /usr/bin/MonitorWharf
+
+ # Handle the documentation
+ dodoc ChangeLog INSTALL NEW* README* TEAM UPGRADE
+ cp -pPR TODO "${D}"/usr/share/doc/${PF}/
+ dodir /usr/share/doc/${PF}/html
+ cp -pPR doc/* "${D}"/usr/share/doc/${PF}/html
+ rm "${D}"/usr/share/doc/${PF}/html/{Makefile*,afterstepdoc.in}
+
+ insinto /usr/share/xsessions
+ newins AfterStep.desktop.final AfterStep.desktop
+
+ # For desktop managers like GDM or KDE
+ exeinto /etc/X11/Sessions
+ doexe "${FILESDIR}"/${PN}
+}
diff --git a/x11-wm/afterstep/afterstep-2.2.9.ebuild b/x11-wm/afterstep/afterstep-2.2.9.ebuild
new file mode 100644
index 000000000000..da9913c5830a
--- /dev/null
+++ b/x11-wm/afterstep/afterstep-2.2.9.ebuild
@@ -0,0 +1,135 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit autotools flag-o-matic eutils
+
+DESCRIPTION="A feature rich NeXTish window manager"
+HOMEPAGE="http://www.afterstep.org/"
+SRC_URI="ftp://ftp.afterstep.org/stable/AfterStep-${PV}.tar.bz2"
+
+# libAfterBase/libAfterImage are LGPL
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="alpha amd64 hppa ia64 ~mips ppc ppc64 sparc x86"
+IUSE="alsa debug dbus gif gtk jpeg cpu_flags_x86_mmx nls png svg tiff xinerama"
+
+RDEPEND="
+ media-libs/freetype
+ alsa? ( media-libs/alsa-lib )
+ dbus? ( sys-apps/dbus )
+ jpeg? ( virtual/jpeg )
+ gif? ( >=media-libs/giflib-4.1.0 )
+ gtk? ( x11-libs/gtk+:2 )
+ png? ( media-libs/libpng:0 )
+ svg? ( gnome-base/librsvg:2 )
+ tiff? ( media-libs/tiff:0 )
+ x11-libs/libICE
+ x11-libs/libXext
+ x11-libs/libSM
+ x11-libs/libXmu
+ x11-libs/libXt
+ x11-libs/libX11
+ x11-libs/libXpm
+ x11-libs/libXrender
+ xinerama? ( x11-libs/libXinerama )"
+
+DEPEND="${RDEPEND}
+ x11-proto/xextproto
+ x11-proto/xproto
+ xinerama? ( x11-proto/xineramaproto )
+ !!media-libs/libafterimage"
+
+S=${WORKDIR}/AfterStep-${PV}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/no-alternatives-${PV}.patch \
+ "${FILESDIR}"/${P}-make_session_data_file.patch \
+ "${FILESDIR}"/${P}-alpha.patch \
+ "${FILESDIR}"/${P}-ldflags.patch \
+ "${FILESDIR}"/${P}-libpng15.patch
+
+ sed -i \
+ -e '/CFLAGS="-O3"/d' \
+ libAfter{Base,Image}/configure || die
+
+ sed -i \
+ -e "/STRIP_BINARIES/s/-s//" \
+ autoconf/configure.in || die #252119
+
+ sed -i \
+ -e '/--with-builtin-gif/s/$with_gif/no/' \
+ autoconf/configure.in || die #253259
+
+ cd "${S}"/autoconf || die
+ eautoreconf
+ cp "${S}"/autoconf/autoconf/config.h.in "${S}"/autoconf || die
+ cp "${S}"/autoconf/configure "${S}" || die
+}
+
+src_configure() {
+ local myconf
+
+ use debug && myconf="--enable-gdb --enable-warn --enable-gprof
+ --enable-audit --enable-trace --enable-trace-x"
+
+ #implied intent of debug means you need the frame pointers.
+ use debug && filter-flags -fomit-frame-pointer
+
+ # Explanation of configure options
+ # ================================
+ # --with-helpcommand="xterm -e man" - Avoid installing xiterm
+ # --with-xpm - Contained in xfree
+ # --disable-availability - So we can use complete paths for menuitems
+ # --enable-ascp - The AfterStep ControlPanel is abandoned
+ # LDCONFIG - bug #265841
+
+ LDCONFIG=/bin/true econf \
+ $(use_enable alsa) \
+ $(use_enable cpu_flags_x86_mmx mmx-optimization) \
+ $(use_enable nls i18n) \
+ $(use_enable xinerama) \
+ $(use_with dbus dbus1) \
+ $(use_with gif) \
+ $(use_with gtk) \
+ $(use_with jpeg) \
+ $(use_with png) \
+ $(use_with tiff) \
+ $(use_with svg) \
+ --with-helpcommand="xterm -e man" \
+ --disable-availability \
+ --disable-staticlibs \
+ --enable-ascp=no \
+ ${myconf}
+}
+
+src_compile() {
+ # gcc: ../libAfterConf/libAfterConf.a: No such file or directory
+ # make[1]: *** [PrintDesktopEntries] Error 1
+ emake -j1
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ # Create a symlink from MonitorWharf to Wharf
+ rm "${D}"/usr/bin/MonitorWharf
+ dosym /usr/bin/Wharf /usr/bin/MonitorWharf
+
+ # Handle the documentation
+ dodoc ChangeLog INSTALL NEW* README* TEAM UPGRADE
+ cp -pPR "${S}"/TODO "${D}"/usr/share/doc/${PF}/
+ dodir /usr/share/doc/${PF}/html
+ cp -pPR "${S}"/doc/* "${D}"/usr/share/doc/${PF}/html
+ rm "${D}"/usr/share/doc/${PF}/html/{Makefile*,afterstepdoc.in}
+
+ insinto /usr/share/xsessions
+ newins "${S}"/AfterStep.desktop.final AfterStep.desktop
+
+ # For desktop managers like GDM or KDE
+ exeinto /etc/X11/Sessions
+ doexe "${FILESDIR}"/afterstep
+}
diff --git a/x11-wm/afterstep/files/afterstep b/x11-wm/afterstep/files/afterstep
new file mode 100755
index 000000000000..22bc4441ea42
--- /dev/null
+++ b/x11-wm/afterstep/files/afterstep
@@ -0,0 +1,2 @@
+#!/bin/sh
+/usr/bin/afterstep
diff --git a/x11-wm/afterstep/files/afterstep-2.2.11-configure.patch b/x11-wm/afterstep/files/afterstep-2.2.11-configure.patch
new file mode 100644
index 000000000000..1ed6bd9394d1
--- /dev/null
+++ b/x11-wm/afterstep/files/afterstep-2.2.11-configure.patch
@@ -0,0 +1,13 @@
+diff --git a/autoconf/configure.in b/autoconf/configure.in
+index 4170f98..a16388e 100644
+--- a/autoconf/configure.in
++++ b/autoconf/configure.in
+@@ -105,7 +105,7 @@ AC_ARG_ENABLE(send-postcard-to-developer, [ --enable-send-postcard-to-developer
+ AC_ARG_ENABLE(data-reinstall, [ --enable-data-reinstall will prevent AfterStep from reinstalling image and font files.[[yes]] ],data_reinstall=$enableval,data_reinstall="yes")
+
+ AC_ARG_ENABLE(script, [ --enable-script compile Script module [[yes]] ], enable_script=$enableval,enable_script="yes")
+-AC_ARG_ENABLE(reuse-font, [ --enable-reuse-font enables reuse of loaded font resource by modules (don't use with TrueType fonts !)[[no]] ],[if test x$enableval == "xyes"; then AC_DEFINE(MODULE_REUSE_LOADED_FONT,1,Enables reuse of loaded font resource by modules) fi])
++AC_ARG_ENABLE(reuse-font, [ --enable-reuse-font enables reuse of loaded font resource by modules (don't use with TrueType fonts !)[[no]] ],[if test x$enableval = "xyes"; then AC_DEFINE(MODULE_REUSE_LOADED_FONT,1,Enables reuse of loaded font resource by modules) fi])
+
+ dnl# For FreeBSD, add -I/usr/local/include
+
diff --git a/x11-wm/afterstep/files/afterstep-2.2.11-execinfo.patch b/x11-wm/afterstep/files/afterstep-2.2.11-execinfo.patch
new file mode 100644
index 000000000000..61f4f08c082d
--- /dev/null
+++ b/x11-wm/afterstep/files/afterstep-2.2.11-execinfo.patch
@@ -0,0 +1,84 @@
+diff --git a/libAfterBase/configure.in b/libAfterBase/configure.in
+index de055ea..eb5619e 100644
+--- a/libAfterBase/configure.in
++++ b/libAfterBase/configure.in
+@@ -189,6 +189,8 @@ AC_CHECK_HEADERS(elf.h,[AC_CHECK_DECLS([ElfW],,,[#include <link.h>])
+ AC_CHECK_MEMBERS([Elf32_Dyn.d_tag, Elf64_Dyn.d_tag],,,[#include <elf.h>])
+ AC_CHECK_TYPES([Elf64_Addr, Elf32_Addr],,,[#include <elf.h>])])
+
++AC_CHECK_LIB([execinfo], [backtrace], [LIBS="$LIBS -lexecinfo"; lib_execinfo="-lexecinfo"])
++
+ dnl# this is needed for self diagnostic code :
+ AC_CHECK_FUNCS(backtrace_symbols_fd backtrace_symbols backtrace)
+
+@@ -257,6 +257,7 @@ AC_SUBST(lib_file_name)
+ AC_SUBST(with_locale)
+ AC_SUBST(user_ldflags)
+ AC_SUBST(x_libs)
++AC_SUBST(lib_execinfo)
+ AC_SUBST(X_CFLAGS)
+ AC_SUBST(LIBPROG)
+ AC_SUBST(LIBINSTALL)
+diff --git a/libAfterBase/Makefile.in b/libAfterBase/Makefile.in
+index f04be29..c3bacbb 100644
+--- a/libAfterBase/Makefile.in
++++ b/libAfterBase/Makefile.in
+@@ -80,6 +80,7 @@ INCLUDES = $(INCS_X) $(INCS_PRIVATE)
+
+ USER_LD_FLAGS = @user_ldflags@
+ LIBS_X = @x_libs@
++LIB_EXECINFO = @lib_execinfo@
+
+
+ LIBDIR = $(DESTDIR)@libdir@
+@@ -326,7 +327,7 @@ $(LIB_SHARED).$(LIBVERMAJOR): $(LIB_SHARED).$(LIBVER)
+
+ $(LIB_SHARED).$(LIBVER): $(LIB_OBJS) $(LIB_INCS)
+ $(CC) -shared $(LDFLAGS) -Wl,-soname,$(LIB_SHARED).$(LIBVERMAJOR) -o $(LIB_SHARED).$(LIBVER) \
+- $(USER_LD_FLAGS) $(LIBS_X) $(LIB_OBJS)
++ $(USER_LD_FLAGS) $(LIB_OBJS) $(LIBS_X) $(LIB_EXECINFO)
+
+ install: install.lib
+
+diff --git a/autoconf/Makefile.defines.in b/autoconf/Makefile.defines.in
+index e6c283f..f8cae5e 100644
+--- a/autoconf/Makefile.defines.in
++++ b/autoconf/Makefile.defines.in
+@@ -40,6 +40,7 @@ LIBS_READLINE = @readline_libs@
+ LIBS_X = @x_libs@
+ LIBS_ALSA = @ALSA_LIBS@
+ LIBS_XEXTS =
++LIB_EXECINFO = @lib_execinfo@
+ LIB_AFTERBASE = @AFTERBASE_LIB@
+ LIB_AFTERIMAGE = @AFTERIMAGE_LIB@
+ LIB_AFTERSTEP = @AFTERSTEP_LIB@
+@@ -53,7 +54,7 @@ LIB_AFTERCONF_STATIC = @AFTERCONF_STATIC_LIB@
+ LIB_ASGTK_STATIC = @ASGTK_STATIC_LIB@
+ LIB_WIDGETS_STATIC = @WIDGETS_STATIC_LIB@
+ LIBS_AFTERIMAGE = @AFTERIMAGE_LIBS@
+-LIBRARIES = $(USER_LD_FLAGS) $(LIBS_PRIVATE) $(LIBS_XEXTS) $(LIBS_X)
++LIBRARIES = $(USER_LD_FLAGS) $(LIBS_PRIVATE) $(LIBS_XEXTS) $(LIBS_X) $(LIB_EXECINFO)
+
+ LIBS_ALL = $(LIBRARIES) $(EXTRA_LIBRARIES)
+
+diff --git a/autoconf/configure.in b/autoconf/configure.in
+index 45add70..4170f98 100644
+--- a/autoconf/configure.in
++++ b/autoconf/configure.in
+@@ -651,6 +651,8 @@ if test "x$send_postcard_to_developer" = "xyes"; then
+ AC_DEFINE(DO_SEND_POSTCARD,1,E-mail installation notification to AfterStep developers)
+ fi
+
++AC_CHECK_LIB([execinfo],[backtrace],[lib_execinfo="-lexecinfo"])
++
+ AC_CANONICAL_TARGET
+ AC_SUBST(build)
+ AC_SUBST(build_os)
+@@ -718,6 +720,7 @@ AC_SUBST(with_desktops)
+ AC_SUBST(with_desktops_1)
+ AC_SUBST(with_deskgeometry)
+ AC_SUBST(no_data_reinstall)
++AC_SUBST(lib_execinfo)
+ dnl# old stuff :
+ AC_SUBST(enable_different_looknfeels)
+ AC_SUBST(enable_pagerbackground)
diff --git a/x11-wm/afterstep/files/afterstep-2.2.9-alpha.patch b/x11-wm/afterstep/files/afterstep-2.2.9-alpha.patch
new file mode 100644
index 000000000000..307180b9bae0
--- /dev/null
+++ b/x11-wm/afterstep/files/afterstep-2.2.9-alpha.patch
@@ -0,0 +1,15 @@
+libAfterStep/alpha_header.h:15: error: conflicting types for 'strlen'
+
+--- libAfterStep/asapp.h
++++ libAfterStep/asapp.h
+@@ -15,10 +15,6 @@
+ #include "sun_headers.h"
+ #endif
+
+-#if defined(__alpha)
+-#include "alpha_header.h"
+-#endif /* NEEDS_ALPHA_HEADER */
+-
+ /* Some people say that AIX and AIXV3 need 3 preceding underscores, other say
+ * no. I'll do both */
+ #if defined ___AIX || defined _AIX || defined __QNX__ || defined ___AIXV3 || defined AIXV3 || defined _SEQUENT_ \ No newline at end of file
diff --git a/x11-wm/afterstep/files/afterstep-2.2.9-ldflags.patch b/x11-wm/afterstep/files/afterstep-2.2.9-ldflags.patch
new file mode 100644
index 000000000000..5d27d7d8293f
--- /dev/null
+++ b/x11-wm/afterstep/files/afterstep-2.2.9-ldflags.patch
@@ -0,0 +1,37 @@
+Respect LDFLAGS
+
+http://bugs.gentoo.org/show_bug.cgi?id=325309
+
+--- autoconf/Makefile.common.lib.in
++++ autoconf/Makefile.common.lib.in
+@@ -245,7 +245,7 @@
+ $(LN_S) -f $(LIB_SHARED).$(LIBVER) $(LIB_SHARED).$(LIBVERMAJOR)
+
+ $(LIB_SHARED).$(LIBVER): $(LIB_OBJS) $(LIB_INCS)
+- $(CC) -shared -Wl,-soname,$(LIB_SHARED).$(LIBVERMAJOR) -o $(LIB_SHARED).$(LIBVER) \
++ $(CC) -shared $(LDFLAGS) -Wl,-soname,$(LIB_SHARED).$(LIBVERMAJOR) -o $(LIB_SHARED).$(LIBVER) \
+ $(LIB_OBJS)
+
+ install: install.lib install.bin
+--- libAfterImage/Makefile.in
++++ libAfterImage/Makefile.in
+@@ -395,7 +395,7 @@
+ $(LN_S) -f $(LIB_SHARED).$(LIBVER) $(LIB_SHARED).$(LIBVERMAJOR)
+
+ $(LIB_SHARED).$(LIBVER): $(LIB_OBJS) $(LIB_INCS) config.h
+- $(CC) -shared -Wl,-soname,$(LIB_SHARED).$(LIBVERMAJOR) -o $(LIB_SHARED).$(LIBVER) \
++ $(CC) -shared $(LDFLAGS) -Wl,-soname,$(LIB_SHARED).$(LIBVERMAJOR) -o $(LIB_SHARED).$(LIBVER) \
+ $(LIB_OBJS)
+
+ install.man:
+--- libAfterBase/Makefile.in
++++ libAfterBase/Makefile.in
+@@ -325,7 +325,7 @@
+ $(LN_S) -f $(LIB_SHARED).$(LIBVER) $(LIB_SHARED).$(LIBVERMAJOR)
+
+ $(LIB_SHARED).$(LIBVER): $(LIB_OBJS) $(LIB_INCS)
+- $(CC) -shared -Wl,-soname,$(LIB_SHARED).$(LIBVERMAJOR) -o $(LIB_SHARED).$(LIBVER) \
++ $(CC) -shared $(LDFLAGS) -Wl,-soname,$(LIB_SHARED).$(LIBVERMAJOR) -o $(LIB_SHARED).$(LIBVER) \
+ $(USER_LD_FLAGS) $(LIBS_X) $(LIB_OBJS)
+
+ install: install.lib
diff --git a/x11-wm/afterstep/files/afterstep-2.2.9-libpng15.patch b/x11-wm/afterstep/files/afterstep-2.2.9-libpng15.patch
new file mode 100644
index 000000000000..b420489b3266
--- /dev/null
+++ b/x11-wm/afterstep/files/afterstep-2.2.9-libpng15.patch
@@ -0,0 +1,31 @@
+--- libAfterImage/export.c
++++ libAfterImage/export.c
+@@ -483,7 +483,7 @@
+ png_ptr = png_create_write_struct( PNG_LIBPNG_VER_STRING, NULL, NULL, NULL );
+ if ( png_ptr != NULL )
+ if( (info_ptr = png_create_info_struct(png_ptr)) != NULL )
+- if( setjmp(png_ptr->jmpbuf) )
++ if( setjmp(png_jmpbuf(png_ptr)) )
+ {
+ png_destroy_info_struct(png_ptr, (png_infopp) &info_ptr);
+ info_ptr = NULL ;
+--- libAfterImage/import.c
++++ libAfterImage/import.c
+@@ -1251,7 +1251,7 @@
+ * the normal method of doing things with libpng). REQUIRED unless you
+ * set up your own error handlers in the png_create_read_struct() earlier.
+ */
+- if ( !setjmp (png_ptr->jmpbuf))
++ if ( !setjmp (png_jmpbuf(png_ptr)))
+ {
+ ASFlagType rgb_flags = ASStorage_RLEDiffCompress|ASStorage_32Bit ;
+
+@@ -1468,7 +1468,7 @@
+
+ static void asim_png_read_data(png_structp png_ptr, png_bytep data, png_size_t length)
+ {
+- ASImPNGReadBuffer *buf = (ASImPNGReadBuffer *)png_ptr->io_ptr;
++ ASImPNGReadBuffer *buf = (ASImPNGReadBuffer *)png_get_io_ptr(png_ptr);
+ memcpy(data, buf->buffer, length);
+ buf->buffer += length;
+ }
diff --git a/x11-wm/afterstep/files/afterstep-2.2.9-make_session_data_file.patch b/x11-wm/afterstep/files/afterstep-2.2.9-make_session_data_file.patch
new file mode 100644
index 000000000000..2c2f8bfeee3d
--- /dev/null
+++ b/x11-wm/afterstep/files/afterstep-2.2.9-make_session_data_file.patch
@@ -0,0 +1,14 @@
+http://bugs.gentoo.org/308649
+
+asgtklookedit.c:658:3: warning: implicit declaration of function ‘make_session_data_file’
+
+--- libASGTK/asgtklookedit.c
++++ libASGTK/asgtklookedit.c
+@@ -28,6 +28,7 @@
+ #include "../libAfterStep/parser.h"
+ #include "../libAfterStep/freestor.h"
+ #include "../libAfterStep/mystyle.h"
++#include "../libAfterStep/session.h"
+ #include "../libAfterConf/afterconf.h"
+
+ #include <unistd.h>
diff --git a/x11-wm/afterstep/files/no-alternatives-2.2.9.patch b/x11-wm/afterstep/files/no-alternatives-2.2.9.patch
new file mode 100644
index 000000000000..4195413c5eed
--- /dev/null
+++ b/x11-wm/afterstep/files/no-alternatives-2.2.9.patch
@@ -0,0 +1,29 @@
+--- Makefile.in.orig 2008-08-08 18:59:39.000000000 +0200
++++ Makefile.in 2008-08-08 19:00:51.000000000 +0200
+@@ -71,7 +71,8 @@
+
+ module.clean:
+
+-install: install.alternative install.desktop install.wmprops mkdir
++#install: install.alternative install.desktop install.wmprops mkdir
++install: install.desktop install.wmprops mkdir
+ @for I in ${subdirs} ; do if [ -d $$I ]; then (cd $$I; ${MAKE} install || exit 1); fi; done
+
+ install.bin: mkdir.bin
+@@ -86,11 +87,11 @@
+ install.script: mkdir.bin
+ @for I in ${subdirs}; do if [ -d $$I ]; then (cd $$I; ${MAKE} install.script || exit 1); fi; done
+
+-install.alternative:
+- @if update-alternatives --version > /dev/null 2>&1 ; then \
+- update-alternatives --install /etc/alternatives/x-window-manager x-window-manager $(AFTER_BIN_DIR)/afterstep 100; \
+- echo "added AfterStep as an x-window-manager alternative"; \
+- fi
++#install.alternative:
++# @if update-alternatives --version > /dev/null 2>&1 ; then \
++# update-alternatives --install /etc/alternatives/x-window-manager x-window-manager $(AFTER_BIN_DIR)/afterstep 100; \
++# echo "added AfterStep as an x-window-manager alternative"; \
++# fi
+
+
+ install.desktop: AfterStep.desktop.final mkdir.share
diff --git a/x11-wm/afterstep/metadata.xml b/x11-wm/afterstep/metadata.xml
new file mode 100644
index 000000000000..35a169026b7f
--- /dev/null
+++ b/x11-wm/afterstep/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>gentoo.org@vaevictus.net</email>
+ <name>Nathan Mahon</name>
+ <description>Upstream developer</description>
+ </maintainer>
+</pkgmetadata>
diff --git a/x11-wm/amiwm/Manifest b/x11-wm/amiwm/Manifest
new file mode 100644
index 000000000000..aa10be5ef13b
--- /dev/null
+++ b/x11-wm/amiwm/Manifest
@@ -0,0 +1 @@
+DIST amiwm0.21pl2.tar.gz 195128 SHA256 7d8f83ae15f04fdc2c188e546bf8233974f5e38f2b4724655128ab7b5351c3df
diff --git a/x11-wm/amiwm/amiwm-0.21_p2.ebuild b/x11-wm/amiwm/amiwm-0.21_p2.ebuild
new file mode 100644
index 000000000000..466c8be735b1
--- /dev/null
+++ b/x11-wm/amiwm/amiwm-0.21_p2.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils multilib toolchain-funcs
+
+MY_P=${PN}${PV/_p/pl}
+DESCRIPTION="Windowmanager ala Amiga(R) Workbench(R)"
+HOMEPAGE="http://www.lysator.liu.se/~marcus/amiwm.html"
+SRC_URI="ftp://ftp.lysator.liu.se/pub/X11/wm/${PN}/${MY_P}.tar.gz"
+
+LICENSE="amiwm"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+COMMON_DEPEND="x11-libs/libX11
+ x11-libs/libXmu
+ x11-libs/libXext"
+
+RDEPEND="${COMMON_DEPEND}
+ media-gfx/xloadimage
+ x11-apps/xrdb
+ x11-apps/xsetroot
+ x11-terms/xterm"
+DEPEND="${COMMON_DEPEND}
+ x11-proto/xproto
+ x11-proto/xextproto"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ tc-export CC
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gentoo.diff \
+ "${FILESDIR}"/${P}-implicts.patch
+ sed -i -e "s:\$(exec_prefix)/lib:\$(exec_prefix)/$(get_libdir):" \
+ Makefile.in || die
+ sed -i -e "s:/bin/ksh:/bin/sh:g" Xsession{,2}.in || die
+
+ cat <<- EOF > "${T}"/amiwm
+ #!/bin/sh
+ exec /usr/bin/amiwm
+ EOF
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+
+ dodoc README*
+
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/amiwm
+}
diff --git a/x11-wm/amiwm/files/amiwm-0.20_p48-flex.patch b/x11-wm/amiwm/files/amiwm-0.20_p48-flex.patch
new file mode 100644
index 000000000000..c346fbb0bc08
--- /dev/null
+++ b/x11-wm/amiwm/files/amiwm-0.20_p48-flex.patch
@@ -0,0 +1,12 @@
+http://bugs.gentoo.org/110169
+
+--- amiwm/lex.l
++++ amiwm/lex.l
+@@ -6,6 +6,7 @@
+ extern FILE *rcfile;
+ #undef yyin
+ #define yyin rcfile
++#define YY_SKIP_YYWRAP
+ #define yywrap() 1
+ extern int parse_keyword(char *);
+ void fixup_string(char *, char *);
diff --git a/x11-wm/amiwm/files/amiwm-0.20_p48-gentoo.diff b/x11-wm/amiwm/files/amiwm-0.20_p48-gentoo.diff
new file mode 100644
index 000000000000..7b13b66a08aa
--- /dev/null
+++ b/x11-wm/amiwm/files/amiwm-0.20_p48-gentoo.diff
@@ -0,0 +1,188 @@
+Fix parallel build, don't strip binaries, respect CC LDFLAGS, fix install dirs
+Fix incompatible implicit declaration of built-in function {strlen,memset,strcpy}
+
+http://bugs.gentoo.org/show_bug.cgi?id=248680
+http://bugs.gentoo.org/show_bug.cgi?id=299918
+
+--- Makefile.in
++++ Makefile.in
+@@ -1,7 +1,6 @@
+ srcdir = @srcdir@
+ VPATH = @srcdir@
+ SHELL = /bin/sh
+-CC = @CC@
+ LEX = @LEX@
+ YACC = @YACC@
+ CFLAGS = @CFLAGS@
+@@ -14,7 +13,7 @@
+ exec_prefix = @exec_prefix@
+ bindir = $(exec_prefix)/bin
+ libdir = $(exec_prefix)/lib
+-mandir = $(prefix)/man
++mandir = $(prefix)/share/man
+ INSTALL = @INSTALL@
+ LN_S = @LN_S@
+ RM = -rm -f
+@@ -44,8 +43,14 @@
+
+ AMIWM_HOME = $(libdir)/amiwm
+
++.PHONY: yaccs all clean lib lexs
++
++.SUFFIXES: .c
++
+ all : $(PROGS) $(MODULES)
+
++$(OBJS): lexs
++
+ lib :
+ @( cd libami; $(MAKE) libami.a )
+
+@@ -64,71 +69,63 @@
+ ppmtoinfo.o : ppmtoinfo.c
+ $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -DAMIWM_HOME=\"$(AMIWM_HOME)\" $<
+
+-gram.h gram.c: gram.y
+- $(YACC) $(YFLAGS) gram.y
+- mv y.tab.c gram.c
+- mv y.tab.h gram.h
++yaccs: gram.c kbdmodule.c
++lexs: yaccs lex.c kbdlexer.c
++
++%.c: %.y
++ $(YACC) $(YFLAGS) $< -o $@
+
+ lex.c : lex.l
+ $(LEX) -t lex.l > lex.c
+
+-kbdmodule.h kbdmodule.c: kbdmodule.y
+- $(YACC) $(YFLAGS) kbdmodule.y
+- mv y.tab.c kbdmodule.c
+- mv y.tab.h kbdmodule.h
+-
+ kbdlexer.c : kbdlexer.l
+ $(LEX) -t kbdlexer.l > kbdlexer.c
+
+-install : $(PROGS) $(MODULES) Xsession Xsession2 Xinitrc amiwm-init
+- -mkdir -p $(AMIWM_HOME)
+- $(INSTALL) -s requestchoice $(AMIWM_HOME)/requestchoice
+- $(INSTALL) -s executecmd $(AMIWM_HOME)/executecmd
++install : Xsession Xsession2 Xinitrc amiwm-init
++ $(INSTALL) -D requestchoice $(DESTDIR)$(AMIWM_HOME)/requestchoice
++ $(INSTALL) executecmd $(DESTDIR)$(AMIWM_HOME)/executecmd
+ for module in $(MODULES); do \
+ if [ "$$module" = "Background" ]; then \
+- $(INSTALL) $$module $(AMIWM_HOME)/$$module; \
++ $(INSTALL) $$module $(DESTDIR)$(AMIWM_HOME)/$$module; \
+ else \
+- $(INSTALL) -s $$module $(AMIWM_HOME)/$$module; \
++ $(INSTALL) $$module $(DESTDIR)$(AMIWM_HOME)/$$module; \
+ fi \
+ done
+- $(INSTALL) -m 644 system.amiwmrc $(AMIWM_HOME)/system.amiwmrc
+- $(INSTALL) -m 644 def_tool.info $(AMIWM_HOME)/def_tool.info
+- $(INSTALL) -m 644 system.map $(AMIWM_HOME)/system.map
+- $(INSTALL) -m 644 magicwb.map $(AMIWM_HOME)/magicwb.map
+- $(INSTALL) -m 644 schwartz.map $(AMIWM_HOME)/schwartz.map
+- $(INSTALL) -m 755 Xsession $(AMIWM_HOME)/Xsession
+- $(INSTALL) -m 755 Xsession2 $(AMIWM_HOME)/Xsession2
+- $(INSTALL) -m 755 Xinitrc $(AMIWM_HOME)/Xinitrc
+- $(INSTALL) -m 755 amiwm-init $(AMIWM_HOME)/amiwm-init
+- $(INSTALL) -s amiwm $(bindir)/amiwm
+- $(INSTALL) -s ppmtoinfo $(bindir)/ppmtoinfo
+- $(RM) $(bindir)/requestchoice
+- $(LN_S) $(AMIWM_HOME)/requestchoice $(bindir)/requestchoice
+- -mkdir -p $(mandir)/man1
+- $(INSTALL) -m 644 amiwm.1 $(mandir)/man1/amiwm.1
++ $(INSTALL) -m 644 system.amiwmrc $(DESTDIR)$(AMIWM_HOME)/system.amiwmrc
++ $(INSTALL) -m 644 def_tool.info $(DESTDIR)$(AMIWM_HOME)/def_tool.info
++ $(INSTALL) -m 644 system.map $(DESTDIR)$(AMIWM_HOME)/system.map
++ $(INSTALL) -m 644 magicwb.map $(DESTDIR)$(AMIWM_HOME)/magicwb.map
++ $(INSTALL) -m 644 schwartz.map $(DESTDIR)$(AMIWM_HOME)/schwartz.map
++ $(INSTALL) -m 755 Xsession $(DESTDIR)$(AMIWM_HOME)/Xsession
++ $(INSTALL) -m 755 Xsession2 $(DESTDIR)$(AMIWM_HOME)/Xsession2
++ $(INSTALL) -m 755 Xinitrc $(DESTDIR)$(AMIWM_HOME)/Xinitrc
++ $(INSTALL) -m 755 amiwm-init $(DESTDIR)$(AMIWM_HOME)/amiwm-init
++ $(INSTALL) -D amiwm $(DESTDIR)$(bindir)/amiwm
++ $(INSTALL) ppmtoinfo $(DESTDIR)$(bindir)/ppmtoinfo
++ $(RM) $(DESTDIR)$(bindir)/requestchoice
++ $(LN_S) $(DESTDIR)$(AMIWM_HOME)/requestchoice $(DESTDIR)$(bindir)/requestchoice
++ $(INSTALL) -D -m 644 amiwm.1 $(DESTDIR)$(mandir)/man1/amiwm.1
+
+ cde-install : Xresources.amiwm Amilogo.bm Amilogo.pm
+- -mkdir -p $(DT_DIR)/config/C/Xresources.d
+- $(INSTALL) -m 644 Xresources.amiwm $(DT_DIR)/config/C/Xresources.d/Xresources.amiwm
+- -mkdir -p $(DT_DIR)/appconfig/icons/C
+- $(INSTALL) -m 644 Amilogo.bm $(DT_DIR)/appconfig/icons/C/Amilogo.bm
+- $(INSTALL) -m 644 Amilogo.pm $(DT_DIR)/appconfig/icons/C/Amilogo.pm
++ $(INSTALL) -D -m 644 Xresources.amiwm $(DESTDIR)$(DT_DIR)/config/C/Xresources.d/Xresources.amiwm
++ $(INSTALL) -D -m 644 Amilogo.bm $(DESTDIR)$(DT_DIR)/appconfig/icons/C/Amilogo.bm
++ $(INSTALL) -m 644 Amilogo.pm $(DESTDIR)$(DT_DIR)/appconfig/icons/C/Amilogo.pm
+
+
+ amiwm : $(OBJS) lib
+- $(CC) -o amiwm $(OBJS) $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o amiwm $(OBJS) $(LIBS)
+
+ requestchoice : requestchoice.o lib
+- $(CC) -o requestchoice requestchoice.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o requestchoice requestchoice.o $(LIBS)
+
+ executecmd : executecmd.o lib
+- $(CC) -o executecmd executecmd.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o executecmd executecmd.o $(LIBS)
+
+ Keyboard : kbdmodule.o kbdlexer.o lib
+- $(CC) -o Keyboard kbdmodule.o kbdlexer.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o Keyboard kbdmodule.o kbdlexer.o $(LIBS)
+
+ ppmtoinfo : ppmtoinfo.o
+- $(CC) -o ppmtoinfo ppmtoinfo.o -lm
++ $(CC) $(CFLAGS) $(LDFLAGS) -o ppmtoinfo ppmtoinfo.o -lm
+
+ clean :
+ $(RM) core $(PROGS) $(LIBAMI) *.o libami/*.o
+--- icc.c
++++ icc.c
+@@ -1,3 +1,4 @@
++#include <string.h>
+ #include "drawinfo.h"
+ #include "screen.h"
+ #include "icc.h"
+--- rc.c
++++ rc.c
+@@ -1,7 +1,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <X11/Xmu/CharSet.h>
+-
++#include <string.h>
+ #include "alloc.h"
+ #include "prefs.h"
+ #include "drawinfo.h"
+--- libami/drawinfo.c
++++ libami/drawinfo.c
+@@ -1,7 +1,7 @@
+ #include <X11/Xlib.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+-
++#include <string.h>
+ #include "alloc.h"
+ #include "drawinfo.h"
+
+--- libami/mdscreen.c
++++ libami/mdscreen.c
+@@ -1,3 +1,4 @@
++#include <string.h>
+ #include "libami.h"
+ #include "module.h"
+
+--- libami/error.c
++++ libami/error.c
+@@ -1,4 +1,5 @@
+ #include <stdio.h>
++#include <string.h>
+ #include "libami.h"
+
+ #ifndef AMIGAOS
diff --git a/x11-wm/amiwm/files/amiwm-0.21_p2-gentoo.diff b/x11-wm/amiwm/files/amiwm-0.21_p2-gentoo.diff
new file mode 100644
index 000000000000..fa875a4a43bf
--- /dev/null
+++ b/x11-wm/amiwm/files/amiwm-0.21_p2-gentoo.diff
@@ -0,0 +1,160 @@
+Fix parallel build, don't strip binaries, respect CC LDFLAGS, fix install dirs
+Fix incompatible implicit declaration of built-in function {strlen,memset,strcpy}
+
+http://bugs.gentoo.org/show_bug.cgi?id=248680
+http://bugs.gentoo.org/show_bug.cgi?id=299918
+
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -14,7 +14,7 @@
+ exec_prefix = @exec_prefix@
+ bindir = $(exec_prefix)/bin
+ libdir = $(exec_prefix)/lib
+-mandir = $(prefix)/man
++mandir = $(prefix)/share/man
+ INSTALL = @INSTALL@
+ LN_S = @LN_S@
+ RM = -rm -f
+@@ -45,13 +45,19 @@
+
+ AMIWM_HOME = $(libdir)/amiwm
+
++.PHONY: yaccs all clean lib_all lexs
++
++.SUFFIXES: .c
++
+ all : lib_all
+ @$(MAKE) local_all
+
+ local_all : $(PROGS) $(MODULES)
+
++$(OBJS): lexs
++
+ lib_all :
+- @( cd libami; $(MAKE) all )
++ @$(MAKE) -C libami all
+
+ .c.o:
+ $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) $<
+@@ -71,83 +77,75 @@
+ ppmtoinfo.o : ppmtoinfo.c
+ $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -DAMIWM_HOME=\"$(AMIWM_HOME)\" $<
+
+-gram.h gram.c: gram.y
+- $(YACC) $(YFLAGS) $<
+- mv y.tab.c gram.c
+- mv y.tab.h gram.h
++yaccs: gram.c kbdmodule.c
++lexs: yaccs lex.c kbdlexer.c
++
++%.c: %.y
++ $(YACC) $(YFLAGS) $< -o $@
+
+-lex.c : lex.l
+- $(LEX) -t $< > lex.c
+
+-kbdmodule.h kbdmodule.c: kbdmodule.y
+- $(YACC) $(YFLAGS) $<
+- mv y.tab.c kbdmodule.c
+- mv y.tab.h kbdmodule.h
++lex.c : lex.l
++ $(LEX) -t $< > lex.c
+
+ kbdlexer.c : kbdlexer.l
+ $(LEX) -t $< > kbdlexer.c
+
+-install : $(PROGS) $(MODULES) Xsession Xsession2 Xinitrc amiwm-init
+- -mkdir -p $(AMIWM_HOME)
+- $(INSTALL) $(STRIPFLAG) requestchoice $(AMIWM_HOME)/requestchoice
+- $(INSTALL) $(STRIPFLAG) executecmd $(AMIWM_HOME)/executecmd
++install : Xsession Xsession2 Xinitrc amiwm-init
++ $(INSTALL) -D requestchoice $(DESTDIR)$(AMIWM_HOME)/requestchoice
++ $(INSTALL) executecmd $(DESTDIR)$(AMIWM_HOME)/executecmd
+ for module in $(MODULES); do \
+ if [ "$$module" = "$(srcdir)/Background" ]; then \
+- $(INSTALL) $$module $(AMIWM_HOME)/Background; \
++ $(INSTALL) $$module $(DESTDIR)$(AMIWM_HOME)/Background; \
+ else \
+- $(INSTALL) $(STRIPFLAG) $$module $(AMIWM_HOME)/$$module; \
++ $(INSTALL) $(STRIPFLAG) $$module $(DESTDIR)$(AMIWM_HOME)/$$module; \
+ fi; \
+ done
+- $(INSTALL) -m 644 $(srcdir)/system.amiwmrc $(AMIWM_HOME)/system.amiwmrc
+- $(INSTALL) -m 644 $(srcdir)/def_tool.info $(AMIWM_HOME)/def_tool.info
+- $(INSTALL) -m 644 $(srcdir)/system.map $(AMIWM_HOME)/system.map
+- $(INSTALL) -m 644 $(srcdir)/magicwb.map $(AMIWM_HOME)/magicwb.map
+- $(INSTALL) -m 644 $(srcdir)/schwartz.map $(AMIWM_HOME)/schwartz.map
+- $(INSTALL) -m 755 Xsession $(AMIWM_HOME)/Xsession
+- $(INSTALL) -m 755 Xsession2 $(AMIWM_HOME)/Xsession2
+- $(INSTALL) -m 755 Xinitrc $(AMIWM_HOME)/Xinitrc
+- $(INSTALL) -m 755 $(srcdir)/amiwm-init $(AMIWM_HOME)/amiwm-init
+- -mkdir -p $(bindir)
+- $(INSTALL) $(STRIPFLAG) amiwm $(bindir)/amiwm
+- $(INSTALL) $(STRIPFLAG) ppmtoinfo $(bindir)/ppmtoinfo
+- $(RM) $(bindir)/requestchoice
+- $(LN_S) $(AMIWM_HOME)/requestchoice $(bindir)/requestchoice
+- -mkdir -p $(mandir)/man1
+- $(INSTALL) -m 644 $(srcdir)/amiwm.1 $(mandir)/man1/amiwm.1
++ $(INSTALL) -m 644 $(srcdir)/system.amiwmrc $(DESTDIR)$(AMIWM_HOME)/system.amiwmrc
++ $(INSTALL) -m 644 $(srcdir)/def_tool.info $(DESTDIR)$(AMIWM_HOME)/def_tool.info
++ $(INSTALL) -m 644 $(srcdir)/system.map $(DESTDIR)$(AMIWM_HOME)/system.map
++ $(INSTALL) -m 644 $(srcdir)/magicwb.map $(DESTDIR)$(AMIWM_HOME)/magicwb.map
++ $(INSTALL) -m 644 $(srcdir)/schwartz.map $(DESTDIR)$(AMIWM_HOME)/schwartz.map
++ $(INSTALL) -m 755 Xsession $(DESTDIR)$(AMIWM_HOME)/Xsession
++ $(INSTALL) -m 755 Xsession2 $(DESTDIR)$(AMIWM_HOME)/Xsession2
++ $(INSTALL) -m 755 Xinitrc $(DESTDIR)$(AMIWM_HOME)/Xinitrc
++ $(INSTALL) -m 755 $(srcdir)/amiwm-init $(DESTDIR)$(AMIWM_HOME)/amiwm-init
++ $(INSTALL) -D amiwm $(DESTDIR)$(bindir)/amiwm
++ $(INSTALL) ppmtoinfo $(DESTDIR)$(bindir)/ppmtoinfo
++ $(RM) $(DESTDIR)$(bindir)/requestchoice
++ $(LN_S) $(DESTDIR)$(AMIWM_HOME)/requestchoice $(DESTDIR)$(bindir)/requestchoice
++ $(INSTALL) -D -m 644 $(srcdir)/amiwm.1 $(DESTDIR)$(mandir)/man1/amiwm.1
+
+ fs-install : Filesystem
+- $(INSTALL) $(STRIPFLAG) Filesystem $(AMIWM_HOME)/Filesystem
+- $(INSTALL) -m 644 def_disk.info $(AMIWM_HOME)/def_disk.info
+- $(INSTALL) -m 644 def_drawer.info $(AMIWM_HOME)/def_disk.info
++ $(INSTALL) Filesystem $(DESTDIR)$(AMIWM_HOME)/Filesystem
++ $(INSTALL) -m 644 def_disk.info $(DESTDIR)$(AMIWM_HOME)/def_disk.info
++ $(INSTALL) -m 644 def_drawer.info $(DESTDIR)$(AMIWM_HOME)/def_disk.info
+
+ cde-install : Xresources.amiwm Amilogo.bm Amilogo.pm
+- -mkdir -p $(DT_DIR)/config/C/Xresources.d
+- $(INSTALL) -m 644 Xresources.amiwm $(DT_DIR)/config/C/Xresources.d/Xresources.amiwm
+- -mkdir -p $(DT_DIR)/appconfig/icons/C
+- $(INSTALL) -m 644 Amilogo.bm $(DT_DIR)/appconfig/icons/C/Amilogo.bm
++ $(INSTALL) -D -m 644 Xresources.amiwm $(DESTDIR)$(DT_DIR)/config/C/Xresources.d/Xresources.amiwm
++ $(INSTALL) -D -m 644 Amilogo.bm $(DESTDIR)$(DT_DIR)/appconfig/icons/C/Amilogo.bm
+ $(INSTALL) -m 644 Amilogo.pm $(DT_DIR)/appconfig/icons/C/Amilogo.pm
+
+
+ amiwm : $(OBJS) $(LIBAMI)
+- $(CC) -o amiwm $(OBJS) $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o amiwm $(OBJS) $(LIBS)
+
+ requestchoice : requestchoice.o $(LIBAMI)
+- $(CC) -o requestchoice requestchoice.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o requestchoice requestchoice.o $(LIBS)
+
+ executecmd : executecmd.o $(LIBAMI)
+- $(CC) -o executecmd executecmd.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o executecmd executecmd.o $(LIBS)
+
+ Filesystem : filesystem.o $(LIBAMI)
+- $(CC) -o Filesystem filesystem.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o Filesystem filesystem.o $(LIBS)
+
+ Keyboard : kbdmodule.o kbdlexer.o $(LIBAMI)
+- $(CC) -o Keyboard kbdmodule.o kbdlexer.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o Keyboard kbdmodule.o kbdlexer.o $(LIBS)
+
+ ppmtoinfo : ppmtoinfo.o
+- $(CC) -o ppmtoinfo ppmtoinfo.o -lm
++ $(CC) $(CFLAGS) $(LDFLAGS) -o ppmtoinfo ppmtoinfo.o -lm
+
+ localetest : localetest.o $(LIBAMI)
+- $(CC) -o localetest localetest.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o localetest localetest.o $(LIBS)
+
+ clean :
+ $(RM) core $(PROGS) $(LIBAMI) Keyboard *.o libami/*.o
diff --git a/x11-wm/amiwm/files/amiwm-0.21_p2-implicts.patch b/x11-wm/amiwm/files/amiwm-0.21_p2-implicts.patch
new file mode 100644
index 000000000000..4a01347d0e86
--- /dev/null
+++ b/x11-wm/amiwm/files/amiwm-0.21_p2-implicts.patch
@@ -0,0 +1,73 @@
+--- a/main.c
++++ b/main.c
+@@ -131,6 +131,7 @@
+ extern void read_rc_file(char *filename, int manage_all);
+ extern void init_modules();
+ extern void flushmodules();
++extern void closescreen();
+ extern void raiselowerclient(Client *, int);
+
+ #ifndef AMIGAOS
+--- a/menu.c
++++ b/menu.c
+@@ -45,6 +45,11 @@
+ extern void mod_menuselect(struct module *, int, int, int);
+ extern void setfocus(Window);
+ extern void flushmodules();
++extern void openscreen(char *, Window);
++extern void realizescreens(void);
++extern void screentoback();
++extern void wberror(Scrn *, char *);
++extern void closescreen();
+
+ Scrn *mbdclick=NULL, *mbdscr=NULL;
+
+--- a/icc.c
++++ b/icc.c
+@@ -6,6 +6,7 @@
+ #include "prefs.h"
+
+ #include <string.h>
++#include <stdlib.h>
+
+ #ifdef AMIGAOS
+ #include <pragmas/xlib_pragmas.h>
+--- a/libami/lists.c
++++ b/libami/lists.c
+@@ -1,3 +1,4 @@
++#include <string.h>
+ #include "libami.h"
+
+ #ifndef AMIGAOS
+--- a/kbdmodule.y
++++ b/kbdmodule.y
+@@ -2,6 +2,8 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include "libami.h"
++int yyerror(char *);
++int yylex (void);
+
+ void docmd(XEvent *e, void *callback)
+ {
+--- a/gram.y
++++ b/gram.y
+@@ -8,6 +8,8 @@
+ #include "screen.h"
+ #include "icc.h"
+ #include "style.h"
++int yyerror(char *);
++int yylex (void);
+ extern void set_sys_palette(void);
+ extern void set_mwb_palette(void);
+ extern void set_schwartz_palette(void);
+--- a/ppmtoinfo.c
++++ b/ppmtoinfo.c
+@@ -1,6 +1,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <time.h>
+ #ifdef HAVE_UNISTD_H
+ #include <unistd.h>
+ #endif
diff --git a/x11-wm/amiwm/metadata.xml b/x11-wm/amiwm/metadata.xml
new file mode 100644
index 000000000000..03b9f2fc458b
--- /dev/null
+++ b/x11-wm/amiwm/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>maintainer-needed@gentoo.org</email></maintainer>
+ <longdescription>
+ amiwm is an X window manager that tries to make your display look and
+ feel like an Amiga Workbench screen. It is fully functional and can do
+ all the usual window manager stuff, like moving and resizing windows.
+ </longdescription>
+</pkgmetadata>
diff --git a/x11-wm/awesome/Manifest b/x11-wm/awesome/Manifest
new file mode 100644
index 000000000000..068bf7a4cafd
--- /dev/null
+++ b/x11-wm/awesome/Manifest
@@ -0,0 +1,6 @@
+DIST awesome-3.4.15.tar.bz2 762323 SHA256 4207f5cbed25d0e7ab35157165d923c2ccf04fded5b3d5fc130134ce9ed5ddfd SHA512 18bb2659e1e7c18a8917f606d635e968daa31a5be4c6d93a109603aace9b5d8b5fd0b8ac1d13ba3d6f2c5c42661204ce80c5ea322088cd358ec5e164b760c339 WHIRLPOOL 74da6197f2e4e5f3d99a11e99c26563f6a145181bab5c017b7ee330041864527551a230ce6dc6109bb5510621fe874921c7caa72c095fa2be6fbdb69e02da1dd
+DIST awesome-3.5.2.tar.xz 715164 SHA256 188d65b02a8ef905be43f126e2591b0d3caf84e094fb6af5501ae5ef07503e86 SHA512 e1c661dfa64e1747a15c149c445877f36380f30f20a4a39ccf1a02df95b1dc5b38337567dd7e401592b2906627716e72673772fe131189c763dc846978bafd48 WHIRLPOOL caec16cc014bd9ed93c4feec8cca40989cc4a66fd2a6816db65654b66e861c6cc2554a7c5e0e587124f4a96d34ddcd6c2e2845f5ddd2a725048d442361c81407
+DIST awesome-3.5.3.tar.xz 718872 SHA256 544eb343a4a059ebe405ae907bda205e7c63a550417c8ee49f9eeee6870c9253 SHA512 7d3e75ddf72a28a29b3031419485072719fe552508e450faee9e58a365827187c6de50dd11b5a8f0b41a3330456b46a7e6f67018b52891e22d4455e999137d2e WHIRLPOOL ac1a3e1555ff81b7e32f673755514f747d05eb245089094381f46e3abc4ce46e70b35c19512ef589a0e3338e5d71760a1f3b879ceb86fdc8f68d48fbdee2e2c9
+DIST awesome-3.5.4.tar.xz 718916 SHA256 b48bce31e14345f260075d528263385564eaeb204c4b673c893f77e884a24ea8 SHA512 afc221931759e56c24f89bdbf6aab9eb9059a44acaea6345567f3f77eb4663354ca7a266e9395f0b6a3068cd7f15e824a6c938987eac915ddba420050c265235 WHIRLPOOL 0a92be54433a0e91fd52aa31c95d72c3d4b8dd35f4e36094ac94726fbb6ba33f6a7b4ac42e3f81f9b94ab419671ded42d0c769e95ca90e53228147a6f3d3a1bd
+DIST awesome-3.5.5.tar.xz 719080 SHA256 bf30dbd7c4621742b2565919404f009588ea482574ddb85aaa5301bce5258d47 SHA512 2ca9af95afb8d07369da89c18f34889158dc387c570ac5f591ee05c1867d6a88197e02c29fae6666d3b684ed9a783d5bcfae995c98cbf0a5e29237f317d2870f WHIRLPOOL 94d5a5908d5b671389db5a44392ca051841e5b42e962e2420218595636897d1c7e5a5972b9e790799ba31a6c897fc02e3bd601302debd39bb4627acb4e83d779
+DIST awesome-3.5.6.tar.xz 720112 SHA256 37f49de187825425cb3096fc870959d5fec9302b22ffd0f2874d8a18e85046d7 SHA512 8d89bf46956276a8bcf106bb255c051e8382b08617e17691134a8f3e5db3ec9f7773581c02ce62d23e72499f7b1e60fe4322c211e41219b5bffd1897a96f6cf6 WHIRLPOOL 8ec944f1113f7b7b7c6857c02a6c657aec05ddf23674c75a7cf571d4a65720ed4f5f1d28b0fdac032c12ea5e9a54f655d080c6af4e1d314b8c00bf2b9e806d01
diff --git a/x11-wm/awesome/awesome-3.4.15.ebuild b/x11-wm/awesome/awesome-3.4.15.ebuild
new file mode 100644
index 000000000000..57e7d2bd28c2
--- /dev/null
+++ b/x11-wm/awesome/awesome-3.4.15.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+CMAKE_MIN_VERSION="2.8"
+inherit cmake-utils eutils
+
+DESCRIPTION="A dynamic floating and tiling window manager"
+HOMEPAGE="http://awesome.naquadah.org/"
+SRC_URI="http://awesome.naquadah.org/download/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm ppc ppc64 x86 ~x86-fbsd"
+IUSE="dbus doc elibc_FreeBSD gnome"
+
+COMMON_DEPEND=">=dev-lang/lua-5.1
+ dev-libs/libev
+ >=dev-libs/libxdg-basedir-1
+ media-libs/imlib2[png]
+ x11-libs/cairo[xcb]
+ || ( <x11-libs/libX11-1.3.99.901[xcb] >=x11-libs/libX11-1.3.99.901 )
+ >=x11-libs/libxcb-1.6
+ x11-libs/libXcursor
+ >=x11-libs/pango-1.19.3
+ >=x11-libs/startup-notification-0.10_p20110426
+ >=x11-libs/xcb-util-0.3.8
+ dbus? ( >=sys-apps/dbus-1 )
+ elibc_FreeBSD? ( dev-libs/libexecinfo )"
+
+# graphicsmagick's 'convert -channel' has no Alpha support, bug #352282
+DEPEND="${COMMON_DEPEND}
+ >=app-text/asciidoc-8.4.5
+ app-text/xmlto
+ dev-util/gperf
+ virtual/pkgconfig
+ media-gfx/imagemagick[png]
+ >=x11-proto/xcb-proto-1.5
+ >=x11-proto/xproto-7.0.15
+ doc? (
+ app-doc/doxygen
+ dev-lua/luadoc
+ media-gfx/graphviz
+ )"
+
+RDEPEND="${COMMON_DEPEND}
+ || (
+ x11-misc/gxmessage
+ x11-apps/xmessage
+ )"
+
+# bug #321433: Need one of these to for awsetbg.
+# imagemagick provides 'display' and is further down the default list, but
+# listed here for completeness. 'display' however is only usable with
+# x11-apps/xwininfo also present.
+RDEPEND="${RDEPEND}
+ || (
+ ( x11-apps/xwininfo
+ || ( media-gfx/imagemagick[X] media-gfx/graphicsmagick[imagemagick,X] )
+ )
+ x11-misc/habak
+ media-gfx/feh
+ x11-misc/hsetroot
+ media-gfx/qiv
+ media-gfx/xv
+ x11-misc/xsri
+ media-gfx/xli
+ x11-apps/xsetroot
+ )"
+
+DOCS="AUTHORS BUGS PATCHES README STYLE"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}/${PN}-3.4.2-backtrace.patch"
+
+ # bug #408025
+ epatch "${FILESDIR}/${PN}-3.4.11-convert-path.patch"
+
+ #bug #465288
+ sed -e '/NoDisplay/d' -i awesome.desktop || die
+}
+
+src_configure() {
+ mycmakeargs=(
+ -DPREFIX="${EPREFIX}"/usr
+ -DSYSCONFDIR="${EPREFIX}"/etc
+ $(cmake-utils_use_with dbus DBUS)
+ $(cmake-utils_use doc GENERATE_LUADOC)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ local myargs="all"
+
+ if use doc ; then
+ myargs="${myargs} doc"
+ fi
+ cmake-utils_src_make ${myargs}
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use doc ; then
+ (
+ cd "${CMAKE_BUILD_DIR}"/doc
+ mv html doxygen
+ dohtml -r doxygen || die
+ )
+ mv "${ED}"/usr/share/doc/${PN}/luadoc "${ED}"/usr/share/doc/${PF}/html/luadoc || die
+ fi
+ rm -rf "${ED}"/usr/share/doc/${PN} || die
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN} || die
+
+ # GNOME-based awesome
+ if use gnome ; then
+ # GNOME session
+ insinto /usr/share/gnome-session/sessions
+ doins "${FILESDIR}/${PN}-gnome.session" || die
+ # Application launcher
+ domenu "${FILESDIR}/${PN}-gnome.desktop" || die
+ # X Session
+ insinto /usr/share/xsessions/
+ doins "${FILESDIR}/${PN}-gnome-xsession.desktop" || die
+ fi
+}
diff --git a/x11-wm/awesome/awesome-3.5.2-r1.ebuild b/x11-wm/awesome/awesome-3.5.2-r1.ebuild
new file mode 100644
index 000000000000..fdd3e1553c93
--- /dev/null
+++ b/x11-wm/awesome/awesome-3.5.2-r1.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+CMAKE_MIN_VERSION="2.8"
+inherit cmake-utils eutils
+
+DESCRIPTION="A dynamic floating and tiling window manager"
+HOMEPAGE="http://awesome.naquadah.org/"
+SRC_URI="http://awesome.naquadah.org/download/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd"
+IUSE="dbus doc elibc_FreeBSD gnome"
+
+COMMON_DEPEND="
+ >=dev-lang/lua-5.1
+ dev-libs/glib:2
+ >=dev-libs/libxdg-basedir-1
+ >=dev-lua/lgi-0.6.1
+ x11-libs/cairo[xcb]
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/libxcb-1.6
+ >=x11-libs/pango-1.19.3[introspection]
+ >=x11-libs/startup-notification-0.10_p20110426
+ >=x11-libs/xcb-util-0.3.8
+ x11-libs/xcb-util-cursor
+ x11-libs/libXcursor
+ || ( <x11-libs/libX11-1.3.99.901[xcb] >=x11-libs/libX11-1.3.99.901 )
+ dbus? ( >=sys-apps/dbus-1 )
+ elibc_FreeBSD? ( dev-libs/libexecinfo )"
+
+# graphicsmagick's 'convert -channel' has no Alpha support, bug #352282
+DEPEND="${COMMON_DEPEND}
+ >=app-text/asciidoc-8.4.5
+ app-text/xmlto
+ dev-util/gperf
+ virtual/pkgconfig
+ media-gfx/imagemagick[png]
+ >=x11-proto/xcb-proto-1.5
+ >=x11-proto/xproto-7.0.15
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DOCS="AUTHORS BUGS PATCHES README STYLE"
+
+src_prepare() {
+ # bug #408025
+ epatch "${FILESDIR}/${PN}-3.5_rc1-convert-path.patch"
+}
+
+src_configure() {
+ mycmakeargs=(
+ -DPREFIX="${EPREFIX}"/usr
+ -DSYSCONFDIR="${EPREFIX}"/etc
+ $(cmake-utils_use_with dbus DBUS)
+ $(cmake-utils_use doc GENERATE_DOC)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ local myargs="all"
+
+ if use doc ; then
+ myargs="${myargs} doc"
+ fi
+ cmake-utils_src_make ${myargs}
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use doc ; then
+ (
+ cd "${CMAKE_BUILD_DIR}"/doc
+ mv html doxygen
+ dohtml -r doxygen || die
+ )
+ fi
+ rm -rf "${ED}"/usr/share/doc/${PN} || die "Cleanup of dupe docs failed"
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN} || die
+
+ # GNOME-based awesome
+ if use gnome ; then
+ # GNOME session
+ insinto /usr/share/gnome-session/sessions
+ newins "${FILESDIR}/${PN}-gnome-3.session" "${PN}-gnome.session" || die
+ # Application launcher
+ domenu "${FILESDIR}/${PN}-gnome.desktop" || die
+ # X Session
+ insinto /usr/share/xsessions/
+ doins "${FILESDIR}/${PN}-gnome-xsession.desktop" || die
+ fi
+}
+
+pkg_postinst() {
+ # bug #447308
+ if use gnome; then
+ elog
+ elog "You have enabled the gnome USE flag."
+ elog "Please note that quitting awesome won't kill your gnome session."
+ elog "To really quit the session, you should bind your quit key"
+ elog "to the following command:"
+ elog " gnome-session-quit --logout"
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=447308"
+ fi
+
+ # bug #440724
+ elog
+ elog "If you are having issues with Java application windows being"
+ elog "completely blank, try installing"
+ elog " x11-misc/wmname"
+ elog "and setting the WM name to LG3D."
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=440724"
+ elog
+}
diff --git a/x11-wm/awesome/awesome-3.5.2.ebuild b/x11-wm/awesome/awesome-3.5.2.ebuild
new file mode 100644
index 000000000000..1315b68ae677
--- /dev/null
+++ b/x11-wm/awesome/awesome-3.5.2.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+CMAKE_MIN_VERSION="2.8"
+inherit cmake-utils eutils
+
+DESCRIPTION="A dynamic floating and tiling window manager"
+HOMEPAGE="http://awesome.naquadah.org/"
+SRC_URI="http://awesome.naquadah.org/download/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd"
+IUSE="dbus doc elibc_FreeBSD gnome"
+
+COMMON_DEPEND="
+ >=dev-lang/lua-5.1
+ dev-libs/glib:2
+ >=dev-libs/libxdg-basedir-1
+ >=dev-lua/lgi-0.6.1
+ x11-libs/cairo[xcb]
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/libxcb-1.6
+ >=x11-libs/pango-1.19.3[introspection]
+ >=x11-libs/startup-notification-0.10_p20110426
+ >=x11-libs/xcb-util-0.3.8
+ x11-libs/xcb-util-cursor
+ x11-libs/libXcursor
+ || ( <x11-libs/libX11-1.3.99.901[xcb] >=x11-libs/libX11-1.3.99.901 )
+ dbus? ( >=sys-apps/dbus-1 )
+ elibc_FreeBSD? ( dev-libs/libexecinfo )"
+
+# graphicsmagick's 'convert -channel' has no Alpha support, bug #352282
+DEPEND="${COMMON_DEPEND}
+ >=app-text/asciidoc-8.4.5
+ app-text/xmlto
+ dev-util/gperf
+ virtual/pkgconfig
+ media-gfx/imagemagick[png]
+ >=x11-proto/xcb-proto-1.5
+ >=x11-proto/xproto-7.0.15
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DOCS="AUTHORS BUGS PATCHES README STYLE"
+
+src_prepare() {
+ # bug #408025
+ epatch "${FILESDIR}/${PN}-3.5_rc1-convert-path.patch"
+}
+
+src_configure() {
+ mycmakeargs=(
+ -DPREFIX="${EPREFIX}"/usr
+ -DSYSCONFDIR="${EPREFIX}"/etc
+ $(cmake-utils_use_with dbus DBUS)
+ $(cmake-utils_use doc GENERATE_DOC)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ local myargs="all"
+
+ if use doc ; then
+ myargs="${myargs} doc"
+ fi
+ cmake-utils_src_make ${myargs}
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use doc ; then
+ (
+ cd "${CMAKE_BUILD_DIR}"/doc
+ mv html doxygen
+ dohtml -r doxygen || die
+ )
+ fi
+ rm -rf "${ED}"/usr/share/doc/${PN} || die "Cleanup of dupe docs failed"
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN} || die
+
+ # GNOME-based awesome
+ if use gnome ; then
+ # GNOME session
+ insinto /usr/share/gnome-session/sessions
+ doins "${FILESDIR}/${PN}-gnome.session" || die
+ # Application launcher
+ domenu "${FILESDIR}/${PN}-gnome.desktop" || die
+ # X Session
+ insinto /usr/share/xsessions/
+ doins "${FILESDIR}/${PN}-gnome-xsession.desktop" || die
+ fi
+}
+
+pkg_postinst() {
+ # bug #447308
+ if use gnome; then
+ elog
+ elog "You have enabled the gnome USE flag."
+ elog "Please note that quitting awesome won't kill your gnome session."
+ elog "To really quit the session, you should bind your quit key"
+ elog "to the following command:"
+ elog " gnome-session-quit --logout"
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=447308"
+ fi
+
+ # bug #440724
+ elog
+ elog "If you are having issues with Java application windows being"
+ elog "completely blank, try installing"
+ elog " x11-misc/wmname"
+ elog "and setting the WM name to LG3D."
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=440724"
+ elog
+}
diff --git a/x11-wm/awesome/awesome-3.5.3.ebuild b/x11-wm/awesome/awesome-3.5.3.ebuild
new file mode 100644
index 000000000000..aebb60efd927
--- /dev/null
+++ b/x11-wm/awesome/awesome-3.5.3.ebuild
@@ -0,0 +1,129 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+CMAKE_MIN_VERSION="2.8"
+inherit cmake-utils eutils
+
+DESCRIPTION="A dynamic floating and tiling window manager"
+HOMEPAGE="http://awesome.naquadah.org/"
+SRC_URI="http://awesome.naquadah.org/download/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd"
+IUSE="dbus doc elibc_FreeBSD gnome"
+
+COMMON_DEPEND="
+ >=dev-lang/lua-5.1
+ dev-libs/glib:2
+ >=dev-libs/libxdg-basedir-1
+ >=dev-lua/lgi-0.7
+ x11-libs/cairo[xcb]
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/libxcb-1.6
+ >=x11-libs/pango-1.19.3[introspection]
+ >=x11-libs/startup-notification-0.10_p20110426
+ >=x11-libs/xcb-util-0.3.8
+ x11-libs/xcb-util-cursor
+ x11-libs/libXcursor
+ || ( <x11-libs/libX11-1.3.99.901[xcb] >=x11-libs/libX11-1.3.99.901 )
+ dbus? ( >=sys-apps/dbus-1 )
+ elibc_FreeBSD? ( dev-libs/libexecinfo )"
+
+# graphicsmagick's 'convert -channel' has no Alpha support, bug #352282
+DEPEND="${COMMON_DEPEND}
+ >=app-text/asciidoc-8.4.5
+ app-text/xmlto
+ dev-util/gperf
+ virtual/pkgconfig
+ media-gfx/imagemagick[png]
+ >=x11-proto/xcb-proto-1.5
+ >=x11-proto/xproto-7.0.15
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DOCS="AUTHORS BUGS PATCHES README STYLE"
+
+src_prepare() {
+ # bug #408025
+ epatch "${FILESDIR}/${PN}-3.5_rc1-convert-path.patch"
+ epatch "${FILESDIR}/${PN}-xsession.patch"
+}
+
+src_configure() {
+ mycmakeargs=(
+ -DPREFIX="${EPREFIX}"/usr
+ -DSYSCONFDIR="${EPREFIX}"/etc
+ $(cmake-utils_use_with dbus DBUS)
+ $(cmake-utils_use doc GENERATE_DOC)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ local myargs="all"
+
+ if use doc ; then
+ myargs="${myargs} doc"
+ fi
+ cmake-utils_src_make ${myargs}
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use doc ; then
+ (
+ cd "${CMAKE_BUILD_DIR}"/doc
+ mv html doxygen
+ dohtml -r doxygen || die
+ )
+ fi
+ rm -rf "${ED}"/usr/share/doc/${PN} || die "Cleanup of dupe docs failed"
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN} || die
+
+ # GNOME-based awesome
+ if use gnome ; then
+ # GNOME session
+ insinto /usr/share/gnome-session/sessions
+ newins "${FILESDIR}/${PN}-gnome-3.session" "${PN}-gnome.session" || die
+ # Application launcher
+ domenu "${FILESDIR}/${PN}-gnome.desktop" || die
+ # X Session
+ insinto /usr/share/xsessions/
+ doins "${FILESDIR}/${PN}-gnome-xsession.desktop" || die
+ fi
+}
+
+pkg_postinst() {
+ # bug #447308
+ if use gnome; then
+ elog
+ elog "You have enabled the gnome USE flag."
+ elog "Please note that quitting awesome won't kill your gnome session."
+ elog "To really quit the session, you should bind your quit key"
+ elog "to the following command:"
+ elog " gnome-session-quit --logout"
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=447308"
+ fi
+
+ # bug #440724
+ elog
+ elog "If you are having issues with Java application windows being"
+ elog "completely blank, try installing"
+ elog " x11-misc/wmname"
+ elog "and setting the WM name to LG3D."
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=440724"
+ elog
+}
diff --git a/x11-wm/awesome/awesome-3.5.4.ebuild b/x11-wm/awesome/awesome-3.5.4.ebuild
new file mode 100644
index 000000000000..f709548c7fd4
--- /dev/null
+++ b/x11-wm/awesome/awesome-3.5.4.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+CMAKE_MIN_VERSION="2.8"
+inherit cmake-utils eutils
+
+DESCRIPTION="A dynamic floating and tiling window manager"
+HOMEPAGE="http://awesome.naquadah.org/"
+SRC_URI="http://awesome.naquadah.org/download/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd"
+IUSE="dbus doc elibc_FreeBSD gnome"
+
+COMMON_DEPEND="
+ >=dev-lang/lua-5.1
+ dev-libs/glib:2
+ >=dev-libs/libxdg-basedir-1
+ >=dev-lua/lgi-0.7
+ x11-libs/cairo[xcb]
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/libxcb-1.6
+ >=x11-libs/pango-1.19.3[introspection]
+ >=x11-libs/startup-notification-0.10_p20110426
+ >=x11-libs/xcb-util-0.3.8
+ x11-libs/xcb-util-cursor
+ x11-libs/libXcursor
+ || ( <x11-libs/libX11-1.3.99.901[xcb] >=x11-libs/libX11-1.3.99.901 )
+ dbus? ( >=sys-apps/dbus-1 )
+ elibc_FreeBSD? ( dev-libs/libexecinfo )"
+
+# graphicsmagick's 'convert -channel' has no Alpha support, bug #352282
+DEPEND="${COMMON_DEPEND}
+ >=app-text/asciidoc-8.4.5
+ app-text/xmlto
+ dev-util/gperf
+ virtual/pkgconfig
+ media-gfx/imagemagick[png]
+ >=x11-proto/xcb-proto-1.5
+ >=x11-proto/xproto-7.0.15
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DOCS="AUTHORS BUGS PATCHES README STYLE"
+
+src_prepare() {
+ # bug #408025
+ epatch "${FILESDIR}/${PN}-3.5_rc1-convert-path.patch"
+ epatch "${FILESDIR}/${PN}-xsession.patch"
+
+ # bug #506586
+ epatch "${FILESDIR}/${P}-imagebox.patch"
+}
+
+src_configure() {
+ mycmakeargs=(
+ -DPREFIX="${EPREFIX}"/usr
+ -DSYSCONFDIR="${EPREFIX}"/etc
+ $(cmake-utils_use_with dbus DBUS)
+ $(cmake-utils_use doc GENERATE_DOC)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ local myargs="all"
+
+ if use doc ; then
+ myargs="${myargs} doc"
+ fi
+ cmake-utils_src_make ${myargs}
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use doc ; then
+ (
+ cd "${CMAKE_BUILD_DIR}"/doc
+ mv html doxygen
+ dohtml -r doxygen || die
+ )
+ fi
+ rm -rf "${ED}"/usr/share/doc/${PN} || die "Cleanup of dupe docs failed"
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN} || die
+
+ # GNOME-based awesome
+ if use gnome ; then
+ # GNOME session
+ insinto /usr/share/gnome-session/sessions
+ newins "${FILESDIR}/${PN}-gnome-3.session" "${PN}-gnome.session" || die
+ # Application launcher
+ domenu "${FILESDIR}/${PN}-gnome.desktop" || die
+ # X Session
+ insinto /usr/share/xsessions/
+ doins "${FILESDIR}/${PN}-gnome-xsession.desktop" || die
+ fi
+}
+
+pkg_postinst() {
+ # bug #447308
+ if use gnome; then
+ elog
+ elog "You have enabled the gnome USE flag."
+ elog "Please note that quitting awesome won't kill your gnome session."
+ elog "To really quit the session, you should bind your quit key"
+ elog "to the following command:"
+ elog " gnome-session-quit --logout"
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=447308"
+ fi
+
+ # bug #440724
+ elog
+ elog "If you are having issues with Java application windows being"
+ elog "completely blank, try installing"
+ elog " x11-misc/wmname"
+ elog "and setting the WM name to LG3D."
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=440724"
+ elog
+}
diff --git a/x11-wm/awesome/awesome-3.5.5-r1.ebuild b/x11-wm/awesome/awesome-3.5.5-r1.ebuild
new file mode 100644
index 000000000000..9a2fa5e99bfd
--- /dev/null
+++ b/x11-wm/awesome/awesome-3.5.5-r1.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+CMAKE_MIN_VERSION="2.8"
+inherit cmake-utils eutils
+
+DESCRIPTION="A dynamic floating and tiling window manager"
+HOMEPAGE="http://awesome.naquadah.org/"
+SRC_URI="http://awesome.naquadah.org/download/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd"
+IUSE="dbus doc elibc_FreeBSD gnome"
+
+COMMON_DEPEND="
+ >=dev-lang/lua-5.1
+ dev-libs/glib:2
+ >=dev-libs/libxdg-basedir-1
+ >=dev-lua/lgi-0.7
+ x11-libs/cairo[xcb]
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/libxcb-1.6
+ >=x11-libs/pango-1.19.3[introspection]
+ >=x11-libs/startup-notification-0.10_p20110426
+ >=x11-libs/xcb-util-0.3.8
+ x11-libs/xcb-util-cursor
+ x11-libs/libXcursor
+ || ( <x11-libs/libX11-1.3.99.901[xcb] >=x11-libs/libX11-1.3.99.901 )
+ dbus? ( >=sys-apps/dbus-1 )
+ elibc_FreeBSD? ( dev-libs/libexecinfo )"
+
+# graphicsmagick's 'convert -channel' has no Alpha support, bug #352282
+DEPEND="${COMMON_DEPEND}
+ >=app-text/asciidoc-8.4.5
+ app-text/xmlto
+ dev-util/gperf
+ virtual/pkgconfig
+ media-gfx/imagemagick[png]
+ >=x11-proto/xcb-proto-1.5
+ >=x11-proto/xproto-7.0.15
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DOCS="AUTHORS BUGS PATCHES README STYLE"
+
+src_prepare() {
+ # bug #408025
+ epatch "${FILESDIR}/${PN}-3.5_rc1-convert-path.patch"
+ epatch "${FILESDIR}/${PN}-xsession.patch"
+
+ # bug #507604
+ epatch "${FILESDIR}/${P}-util.lua-xdg-icons-fix.patch"
+ # bug #509658
+ epatch "${FILESDIR}/${P}-cflag-cleanup.patch"
+}
+
+src_configure() {
+ mycmakeargs=(
+ -DPREFIX="${EPREFIX}"/usr
+ -DSYSCONFDIR="${EPREFIX}"/etc
+ $(cmake-utils_use_with dbus DBUS)
+ $(cmake-utils_use doc GENERATE_DOC)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ local myargs="all"
+
+ if use doc ; then
+ myargs="${myargs} doc"
+ fi
+ cmake-utils_src_make ${myargs}
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use doc ; then
+ (
+ cd "${CMAKE_BUILD_DIR}"/doc
+ mv html doxygen
+ dohtml -r doxygen || die
+ )
+ fi
+ rm -rf "${ED}"/usr/share/doc/${PN} || die "Cleanup of dupe docs failed"
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN} || die
+
+ # GNOME-based awesome
+ if use gnome ; then
+ # GNOME session
+ insinto /usr/share/gnome-session/sessions
+ newins "${FILESDIR}/${PN}-gnome-3.session" "${PN}-gnome.session" || die
+ # Application launcher
+ domenu "${FILESDIR}/${PN}-gnome.desktop" || die
+ # X Session
+ insinto /usr/share/xsessions/
+ doins "${FILESDIR}/${PN}-gnome-xsession.desktop" || die
+ fi
+}
+
+pkg_postinst() {
+ # bug #447308
+ if use gnome; then
+ elog
+ elog "You have enabled the gnome USE flag."
+ elog "Please note that quitting awesome won't kill your gnome session."
+ elog "To really quit the session, you should bind your quit key"
+ elog "to the following command:"
+ elog " gnome-session-quit --logout"
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=447308"
+ fi
+
+ # bug #440724
+ elog
+ elog "If you are having issues with Java application windows being"
+ elog "completely blank, try installing"
+ elog " x11-misc/wmname"
+ elog "and setting the WM name to LG3D."
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=440724"
+ elog
+}
diff --git a/x11-wm/awesome/awesome-3.5.5.ebuild b/x11-wm/awesome/awesome-3.5.5.ebuild
new file mode 100644
index 000000000000..a8f8015eca2b
--- /dev/null
+++ b/x11-wm/awesome/awesome-3.5.5.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+CMAKE_MIN_VERSION="2.8"
+inherit cmake-utils eutils
+
+DESCRIPTION="A dynamic floating and tiling window manager"
+HOMEPAGE="http://awesome.naquadah.org/"
+SRC_URI="http://awesome.naquadah.org/download/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd"
+IUSE="dbus doc elibc_FreeBSD gnome"
+
+COMMON_DEPEND="
+ >=dev-lang/lua-5.1
+ dev-libs/glib:2
+ >=dev-libs/libxdg-basedir-1
+ >=dev-lua/lgi-0.7
+ x11-libs/cairo[xcb]
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/libxcb-1.6
+ >=x11-libs/pango-1.19.3[introspection]
+ >=x11-libs/startup-notification-0.10_p20110426
+ >=x11-libs/xcb-util-0.3.8
+ x11-libs/xcb-util-cursor
+ x11-libs/libXcursor
+ || ( <x11-libs/libX11-1.3.99.901[xcb] >=x11-libs/libX11-1.3.99.901 )
+ dbus? ( >=sys-apps/dbus-1 )
+ elibc_FreeBSD? ( dev-libs/libexecinfo )"
+
+# graphicsmagick's 'convert -channel' has no Alpha support, bug #352282
+DEPEND="${COMMON_DEPEND}
+ >=app-text/asciidoc-8.4.5
+ app-text/xmlto
+ dev-util/gperf
+ virtual/pkgconfig
+ media-gfx/imagemagick[png]
+ >=x11-proto/xcb-proto-1.5
+ >=x11-proto/xproto-7.0.15
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DOCS="AUTHORS BUGS PATCHES README STYLE"
+
+src_prepare() {
+ # bug #408025
+ epatch "${FILESDIR}/${PN}-3.5_rc1-convert-path.patch"
+ epatch "${FILESDIR}/${PN}-xsession.patch"
+
+ # bug #507604
+ epatch "${FILESDIR}/${P}-util.lua-xdg-icons-fix.patch"
+}
+
+src_configure() {
+ mycmakeargs=(
+ -DPREFIX="${EPREFIX}"/usr
+ -DSYSCONFDIR="${EPREFIX}"/etc
+ $(cmake-utils_use_with dbus DBUS)
+ $(cmake-utils_use doc GENERATE_DOC)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ local myargs="all"
+
+ if use doc ; then
+ myargs="${myargs} doc"
+ fi
+ cmake-utils_src_make ${myargs}
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use doc ; then
+ (
+ cd "${CMAKE_BUILD_DIR}"/doc
+ mv html doxygen
+ dohtml -r doxygen || die
+ )
+ fi
+ rm -rf "${ED}"/usr/share/doc/${PN} || die "Cleanup of dupe docs failed"
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN} || die
+
+ # GNOME-based awesome
+ if use gnome ; then
+ # GNOME session
+ insinto /usr/share/gnome-session/sessions
+ newins "${FILESDIR}/${PN}-gnome-3.session" "${PN}-gnome.session" || die
+ # Application launcher
+ domenu "${FILESDIR}/${PN}-gnome.desktop" || die
+ # X Session
+ insinto /usr/share/xsessions/
+ doins "${FILESDIR}/${PN}-gnome-xsession.desktop" || die
+ fi
+}
+
+pkg_postinst() {
+ # bug #447308
+ if use gnome; then
+ elog
+ elog "You have enabled the gnome USE flag."
+ elog "Please note that quitting awesome won't kill your gnome session."
+ elog "To really quit the session, you should bind your quit key"
+ elog "to the following command:"
+ elog " gnome-session-quit --logout"
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=447308"
+ fi
+
+ # bug #440724
+ elog
+ elog "If you are having issues with Java application windows being"
+ elog "completely blank, try installing"
+ elog " x11-misc/wmname"
+ elog "and setting the WM name to LG3D."
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=440724"
+ elog
+}
diff --git a/x11-wm/awesome/awesome-3.5.6.ebuild b/x11-wm/awesome/awesome-3.5.6.ebuild
new file mode 100644
index 000000000000..2fbf29866af2
--- /dev/null
+++ b/x11-wm/awesome/awesome-3.5.6.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+CMAKE_MIN_VERSION="2.8"
+inherit cmake-utils eutils
+
+DESCRIPTION="A dynamic floating and tiling window manager"
+HOMEPAGE="http://awesome.naquadah.org/"
+SRC_URI="http://awesome.naquadah.org/download/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd"
+IUSE="dbus doc elibc_FreeBSD gnome"
+
+COMMON_DEPEND="
+ >=dev-lang/lua-5.1
+ dev-libs/glib:2
+ >=dev-libs/libxdg-basedir-1
+ >=dev-lua/lgi-0.7
+ x11-libs/cairo[xcb]
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/libxcb-1.6
+ >=x11-libs/pango-1.19.3[introspection]
+ >=x11-libs/startup-notification-0.10_p20110426
+ >=x11-libs/xcb-util-0.3.8
+ x11-libs/xcb-util-cursor
+ x11-libs/libXcursor
+ || ( <x11-libs/libX11-1.3.99.901[xcb] >=x11-libs/libX11-1.3.99.901 )
+ dbus? ( >=sys-apps/dbus-1 )
+ elibc_FreeBSD? ( dev-libs/libexecinfo )"
+
+# graphicsmagick's 'convert -channel' has no Alpha support, bug #352282
+DEPEND="${COMMON_DEPEND}
+ >=app-text/asciidoc-8.4.5
+ app-text/xmlto
+ dev-util/gperf
+ virtual/pkgconfig
+ media-gfx/imagemagick[png]
+ >=x11-proto/xcb-proto-1.5
+ >=x11-proto/xproto-7.0.15
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DOCS="AUTHORS BUGS PATCHES README STYLE"
+
+src_prepare() {
+ # bug #408025
+ epatch "${FILESDIR}/${PN}-3.5_rc1-convert-path.patch"
+ epatch "${FILESDIR}/${PN}-xsession.patch"
+
+ # bug #507604
+ epatch "${FILESDIR}/${PN}-3.5.5-util.lua-xdg-icons-fix.patch"
+ # bug #509658
+ epatch "${FILESDIR}/${PN}-3.5.5-cflag-cleanup.patch"
+}
+
+src_configure() {
+ mycmakeargs=(
+ -DPREFIX="${EPREFIX}"/usr
+ -DSYSCONFDIR="${EPREFIX}"/etc
+ $(cmake-utils_use_with dbus DBUS)
+ $(cmake-utils_use doc GENERATE_DOC)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ local myargs="all"
+
+ if use doc ; then
+ myargs="${myargs} doc"
+ fi
+ cmake-utils_src_make ${myargs}
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use doc ; then
+ (
+ cd "${CMAKE_BUILD_DIR}"/doc
+ mv html doxygen
+ dohtml -r doxygen || die
+ )
+ fi
+ rm -rf "${ED}"/usr/share/doc/${PN} || die "Cleanup of dupe docs failed"
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN} || die
+
+ # GNOME-based awesome
+ if use gnome ; then
+ # GNOME session
+ insinto /usr/share/gnome-session/sessions
+ newins "${FILESDIR}/${PN}-gnome-3.session" "${PN}-gnome.session" || die
+ # Application launcher
+ domenu "${FILESDIR}/${PN}-gnome.desktop" || die
+ # X Session
+ insinto /usr/share/xsessions/
+ doins "${FILESDIR}/${PN}-gnome-xsession.desktop" || die
+ fi
+}
+
+pkg_postinst() {
+ # bug #447308
+ if use gnome; then
+ elog
+ elog "You have enabled the gnome USE flag."
+ elog "Please note that quitting awesome won't kill your gnome session."
+ elog "To really quit the session, you should bind your quit key"
+ elog "to the following command:"
+ elog " gnome-session-quit --logout"
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=447308"
+ fi
+
+ # bug #440724
+ elog
+ elog "If you are having issues with Java application windows being"
+ elog "completely blank, try installing"
+ elog " x11-misc/wmname"
+ elog "and setting the WM name to LG3D."
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=440724"
+ elog
+}
diff --git a/x11-wm/awesome/files/awesome-3.4.11-convert-path.patch b/x11-wm/awesome/files/awesome-3.4.11-convert-path.patch
new file mode 100644
index 000000000000..f06739ce87b6
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-3.4.11-convert-path.patch
@@ -0,0 +1,18 @@
+From: Julian Ospald <hasufell@gentoo.org>
+Date: Tue Mar 13 12:55:00 UTC 2012
+Subject: build system
+
+https://bugs.gentoo.org/show_bug.cgi?id=408025
+fix compilation when dev-libs/libee is installed
+
+--- awesomeConfig.cmake
++++ awesomeConfig.cmake
+@@ -57,7 +57,7 @@
+ a_find_program(LUA_EXECUTABLE lua FALSE)
+ a_find_program(LUADOC_EXECUTABLE luadoc FALSE)
+ # theme graphics
+-a_find_program(CONVERT_EXECUTABLE convert TRUE)
++a_find_program(CONVERT_EXECUTABLE bin/convert TRUE)
+ # doxygen
+ include(FindDoxygen)
+ # pkg-config
diff --git a/x11-wm/awesome/files/awesome-3.4.2-backtrace.patch b/x11-wm/awesome/files/awesome-3.4.2-backtrace.patch
new file mode 100644
index 000000000000..4d481ea130ac
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-3.4.2-backtrace.patch
@@ -0,0 +1,18 @@
+diff -Naur awesome-3.4.2.orig/awesomeConfig.cmake awesome-3.4.2/awesomeConfig.cmake
+--- awesome-3.4.2.orig/awesomeConfig.cmake 2009-11-27 04:03:25.000000000 +0900
++++ awesome-3.4.2/awesomeConfig.cmake 2009-11-28 01:17:01.639797168 +0900
+@@ -167,6 +167,14 @@
+ # Check for libev
+ a_find_library(LIB_EV ev)
+
++# Check for backtrace
++include(CheckFunctionExists)
++CHECK_FUNCTION_EXISTS(backtrace HAVE_BACKTRACE)
++if(NOT HAVE_BACKTRACE)
++ a_find_library(LIB_EXECINFO execinfo)
++ set(AWESOME_REQUIRED_LIBRARIES ${AWESOME_REQUIRED_LIBRARIES} ${LIB_EXECINFO})
++endif()
++
+ # Error check
+ if(NOT LUA51_FOUND AND NOT LUA50_FOUND) # This is a workaround to a cmake bug
+ message(FATAL_ERROR "lua library not found")
diff --git a/x11-wm/awesome/files/awesome-3.5.4-imagebox.patch b/x11-wm/awesome/files/awesome-3.5.4-imagebox.patch
new file mode 100644
index 000000000000..7d224f24302e
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-3.5.4-imagebox.patch
@@ -0,0 +1,28 @@
+From: Uli Schlachter <psychon@znc.in>
+Date: Wed, 2 Apr 2014 20:48:06 +0000 (+0200)
+Subject: imagebox: Don't try to scale by infinite (FS#1248)
+X-Git-Url: http://git.naquadah.org/?p=awesome.git;a=commitdiff_plain;h=7967d05915c95c8eba7709a46093cc1b6de55572;hp=afa50904fb1c79a24ddda8fb242afe2dcc1de841
+
+imagebox: Don't try to scale by infinite (FS#1248)
+
+When an imagebox was drawn with width or height zero, it tried to calculate the
+needed scale factor for making the image fit. Sadly, this would be a division by
+zero aka infinite in this case.
+
+Fix this by just not drawing anything if there is no space available.
+
+Signed-off-by: Uli Schlachter <psychon@znc.in>
+---
+
+diff --git a/lib/wibox/widget/imagebox.lua.in b/lib/wibox/widget/imagebox.lua.in
+index da51634..5963d0e 100644
+--- a/lib/wibox/widget/imagebox.lua.in
++++ b/lib/wibox/widget/imagebox.lua.in
+@@ -18,6 +18,7 @@ local imagebox = { mt = {} }
+ --- Draw an imagebox with the given cairo context in the given geometry.
+ function imagebox:draw(wibox, cr, width, height)
+ if not self._image then return end
++ if width == 0 or height == 0 then return end
+
+ cr:save()
+
diff --git a/x11-wm/awesome/files/awesome-3.5.5-cflag-cleanup.patch b/x11-wm/awesome/files/awesome-3.5.5-cflag-cleanup.patch
new file mode 100644
index 000000000000..3cfeaba2df36
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-3.5.5-cflag-cleanup.patch
@@ -0,0 +1,12 @@
+diff -u awesome-3.5.5/awesomeConfig.cmake awesome-3.5.5.new/awesomeConfig.cmake
+--- awesome-3.5.5/awesomeConfig.cmake 2014-08-24 23:28:04.178646000 -0400
++++ awesome-3.5.5.new/awesomeConfig.cmake 2014-08-24 23:28:44.204646000 -0400
+@@ -16,7 +16,7 @@
+ option(GENERATE_DOC "generate API documentation" ON)
+
+ # {{{ CFLAGS
+-add_definitions(-O1 -std=gnu99 -ggdb3 -rdynamic -fno-strict-aliasing -Wall -Wextra
++add_definitions(-std=gnu99 -fno-strict-aliasing -Wall -Wextra
+ -Wchar-subscripts -Wundef -Wshadow -Wcast-align -Wwrite-strings
+ -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self
+ -Wpointer-arith -Wformat-nonliteral
diff --git a/x11-wm/awesome/files/awesome-3.5.5-util.lua-xdg-icons-fix.patch b/x11-wm/awesome/files/awesome-3.5.5-util.lua-xdg-icons-fix.patch
new file mode 100644
index 000000000000..588f9ab9ec52
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-3.5.5-util.lua-xdg-icons-fix.patch
@@ -0,0 +1,46 @@
+From: Uli Schlachter <psychon@znc.in>
+Date: Sat, 12 Apr 2014 14:15:11 +0000 (+0200)
+Subject: Merge git://github.com/Teknocrat/awesome
+X-Git-Url: http://git.naquadah.org/?p=awesome.git;a=commitdiff_plain;h=d76d3e0b6a00b8b289b3801ba197e0dae732a92d;hp=1090719d677c86e90a1394a34f0effb418728493
+
+Merge git://github.com/Teknocrat/awesome
+---
+
+diff --git a/lib/awful/util.lua.in b/lib/awful/util.lua.in
+index 1d35f2f..123c4a6 100644
+--- a/lib/awful/util.lua.in
++++ b/lib/awful/util.lua.in
+@@ -185,21 +185,24 @@ end
+ -- of the dirs are searched first
+ function util.geticonpath(iconname, exts, dirs, size)
+ exts = exts or { 'png', 'gif' }
+- dirs = dirs or { '/usr/share/pixmaps/' }
++ dirs = dirs or { '/usr/share/pixmaps/', '/usr/share/icons/hicolor/' }
++ icontypes = { 'apps', 'actions', 'categories', 'emblems',
++ 'mimetypes', 'status', 'devices', 'extras', 'places', 'stock' }
+ for _, d in pairs(dirs) do
++ local icon
+ for _, e in pairs(exts) do
+- local icon
+- if size then
+- icon = string.format("%s%ux%u/%s.%s",
+- d, size, size, iconname, e)
+- if util.file_readable(icon) then
+- return icon
+- end
+- end
+ icon = d .. iconname .. '.' .. e
+ if util.file_readable(icon) then
+ return icon
+ end
++ if size then
++ for _, t in pairs(icontypes) do
++ icon = string.format("%s%ux%u/%s/%s.%s", d, size, size, t, iconname, e)
++ if util.file_readable(icon) then
++ return icon
++ end
++ end
++ end
+ end
+ end
+ end
diff --git a/x11-wm/awesome/files/awesome-3.5_rc1-convert-path.patch b/x11-wm/awesome/files/awesome-3.5_rc1-convert-path.patch
new file mode 100644
index 000000000000..e6c37b0f9c76
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-3.5_rc1-convert-path.patch
@@ -0,0 +1,12 @@
+diff -Nuar --exclude '*.orig' awesome-3.5-rc1.orig/awesomeConfig.cmake awesome-3.5-rc1/awesomeConfig.cmake
+--- awesome-3.5-rc1.orig/awesomeConfig.cmake 2012-11-24 13:51:33.000000000 +0000
++++ awesome-3.5-rc1/awesomeConfig.cmake 2012-11-24 20:42:23.743412441 +0000
+@@ -56,7 +56,7 @@
+ a_find_program(LUA_EXECUTABLE lua FALSE)
+ a_find_program(LDOC_EXECUTABLE ldoc.lua FALSE)
+ # theme graphics
+-a_find_program(CONVERT_EXECUTABLE convert TRUE)
++a_find_program(CONVERT_EXECUTABLE bin/convert TRUE)
+ # doxygen
+ include(FindDoxygen)
+ # pkg-config
diff --git a/x11-wm/awesome/files/awesome-3.5_rc1-luadoc-fix-patch b/x11-wm/awesome/files/awesome-3.5_rc1-luadoc-fix-patch
new file mode 100644
index 000000000000..e67eeb04e0f5
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-3.5_rc1-luadoc-fix-patch
@@ -0,0 +1,10 @@
+--- ../awesome-3.5-rc1/lib/naughty.lua.in.orig 2012-11-24 05:51:33.000000000 -0800
++++ ../awesome-3.5_rc1/lib/naughty.lua.in 2012-11-24 13:17:14.025201211 -0800
+@@ -55,7 +55,6 @@
+ -- @field low The preset for notifications with low urgency level
+ -- @field normal The default preset for every notification without a preset that will also be used for normal urgency level
+ -- @field critical The preset for notifications with a critical urgency level
+--- @class table
+ naughty.config.presets = {
+ normal = {},
+ low = {
diff --git a/x11-wm/awesome/files/awesome-glib-fix.patch b/x11-wm/awesome/files/awesome-glib-fix.patch
new file mode 100644
index 000000000000..e3e6fcf94896
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-glib-fix.patch
@@ -0,0 +1,13 @@
+>=glib-2.31 build fix
+
+--- a/spawn.c
++++ b/spawn.c
+@@ -24,7 +24,7 @@
+ #include <sys/types.h>
+ #include <sys/wait.h>
+
+-#include <glib/gspawn.h>
++#include <glib.h>
+
+ #include "spawn.h"
+ #include "screen.h"
diff --git a/x11-wm/awesome/files/awesome-gnome-3.session b/x11-wm/awesome/files/awesome-gnome-3.session
new file mode 100644
index 000000000000..d1bd6fa9f9f6
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-gnome-3.session
@@ -0,0 +1,3 @@
+[GNOME Session]
+Name=Awesome session
+RequiredComponents=gnome-settings-daemon;awesome-gnome;
diff --git a/x11-wm/awesome/files/awesome-gnome-xsession.desktop b/x11-wm/awesome/files/awesome-gnome-xsession.desktop
new file mode 100644
index 000000000000..148cd3dd30fc
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-gnome-xsession.desktop
@@ -0,0 +1,6 @@
+[Desktop Entry]
+Name=Awesome GNOME
+Comment=GNOME with highly configurable window manager awesome
+TryExec=gnome-session
+Exec=gnome-session --session=awesome-gnome
+Type=Application
diff --git a/x11-wm/awesome/files/awesome-gnome.desktop b/x11-wm/awesome/files/awesome-gnome.desktop
new file mode 100644
index 000000000000..8adf5fcc95e5
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-gnome.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Version=1.0
+Type=Application
+Name=Awesome
+Comment=Highly configurable framework window manager
+NoDisplay=true
+TryExec=/etc/X11/Sessions/awesome
+Exec=/etc/X11/Sessions/awesome
diff --git a/x11-wm/awesome/files/awesome-gnome.session b/x11-wm/awesome/files/awesome-gnome.session
new file mode 100644
index 000000000000..dd0c01b55dc1
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-gnome.session
@@ -0,0 +1,6 @@
+[GNOME Session]
+Name=Awesome session
+RequiredComponents=gnome-settings-daemon;
+RequiredProviders=windowmanager;notifications;
+DefaultProvider-windowmanager=awesome-gnome
+DefaultProvider-notifications=notification-daemon
diff --git a/x11-wm/awesome/files/awesome-session b/x11-wm/awesome/files/awesome-session
new file mode 100644
index 000000000000..fe7694671850
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-session
@@ -0,0 +1,90 @@
+#!/bin/sh
+# Awesome Xsession starter, based on Xsession shipped by x11-apps/xinit-1.0.5-r1
+
+# redirect errors to a file in user's home directory if we can
+for errfile in "$HOME/.awesome-errors" "${TMPDIR-/tmp}/awesome-$USER" "/tmp/awesome-$USER"
+do
+ if ( cp /dev/null "$errfile" 2> /dev/null )
+ then
+ chmod 600 "$errfile"
+ exec > "$errfile" 2>&1
+ break
+ fi
+done
+
+userresources=$HOME/.Xresources
+usermodmap=$HOME/.Xmodmap
+userxkbmap=$HOME/.Xkbmap
+
+sysresources=/etc/X11/Xresources
+sysmodmap=/etc/X11/Xmodmap
+sysxkbmap=/etc/X11/Xkbmap
+
+rh6sysresources=/etc/X11/xinit/Xresources
+rh6sysmodmap=/etc/X11/xinit/Xmodmap
+
+
+# merge in defaults
+if [ -f "$rh6sysresources" ]; then
+ xrdb -merge "$rh6sysresources"
+fi
+
+if [ -f "$sysresources" ]; then
+ xrdb -merge "$sysresources"
+fi
+
+if [ -f "$userresources" ]; then
+ xrdb -merge "$userresources"
+fi
+
+# merge in keymaps
+if [ -f "$sysxkbmap" ]; then
+ setxkbmap `cat "$sysxkbmap"`
+ XKB_IN_USE=yes
+fi
+
+if [ -f "$userxkbmap" ]; then
+ setxkbmap `cat "$userxkbmap"`
+ XKB_IN_USE=yes
+fi
+
+#
+# Eeek, this seems like too much magic here
+#
+if [ -z "$XKB_IN_USE" -a ! -L /etc/X11/X ]; then
+ if grep '^exec.*/Xsun' /etc/X11/X > /dev/null 2>&1 && [ -f /etc/X11/XF86Config ]; then
+ xkbsymbols=`sed -n -e 's/^[ ]*XkbSymbols[ ]*"\(.*\)".*$/\1/p' /etc/X11/XF86Config /etc/X11/xorg.conf`
+ if [ -n "$xkbsymbols" ]; then
+ setxkbmap -symbols "$xkbsymbols"
+ XKB_IN_USE=yes
+ fi
+ fi
+fi
+
+# xkb and xmodmap don't play nice together
+if [ -z "$XKB_IN_USE" ]; then
+ if [ -f "$rh6sysmodmap" ]; then
+ xmodmap "$rh6sysmodmap"
+ fi
+
+ if [ -f "$sysmodmap" ]; then
+ xmodmap "$sysmodmap"
+ fi
+
+ if [ -f "$usermodmap" ]; then
+ xmodmap "$usermodmap"
+ fi
+fi
+
+unset XKB_IN_USE
+
+# run all system xinitrc shell scripts.
+if [ -d /etc/X11/xinit/xinitrc.d ]; then
+ for i in /etc/X11/xinit/xinitrc.d/* ; do
+ if [ -x "$i" ]; then
+ . "$i"
+ fi
+ done
+fi
+
+exec /usr/bin/awesome
diff --git a/x11-wm/awesome/files/awesome-xsession.patch b/x11-wm/awesome/files/awesome-xsession.patch
new file mode 100644
index 000000000000..5a17076683dd
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-xsession.patch
@@ -0,0 +1,9 @@
+--- awesome-3.5.2/awesome.desktop 2013-10-12 12:48:49.000000000 -0400
++++ awesome.desktop 2014-03-29 23:24:01.137547594 -0400
+@@ -3,5 +3,5 @@
+ Name=awesome
+ Comment=Highly configurable framework window manager
+ TryExec=awesome
+-Exec=awesome
++Exec=/etc/X11/Sessions/awesome
+ Type=Application
diff --git a/x11-wm/awesome/files/awesome.desktop b/x11-wm/awesome/files/awesome.desktop
new file mode 100644
index 000000000000..b8d8f2142118
--- /dev/null
+++ b/x11-wm/awesome/files/awesome.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=awesome
+Comment=Highly configurable framework window manager
+NoDisplay=true
+TryExec=/etc/X11/Sessions/awesome
+Exec=/etc/X11/Sessions/awesome
+Type=Application
diff --git a/x11-wm/awesome/metadata.xml b/x11-wm/awesome/metadata.xml
new file mode 100644
index 000000000000..446ee196aa11
--- /dev/null
+++ b/x11-wm/awesome/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>maksbotan@gentoo.org</email>
+ <name>Maxim Koltsov</name>
+ </maintainer>
+ <maintainer>
+ <email>skrattaren@yandex.ru</email>
+ <name>Nikolaj Sjujskij</name>
+ </maintainer>
+ <maintainer>
+ <email>wired@gentoo.org</email>
+ <name>Alex Alexander</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/x11-wm/blackbox/Manifest b/x11-wm/blackbox/Manifest
new file mode 100644
index 000000000000..69a11eb83f3a
--- /dev/null
+++ b/x11-wm/blackbox/Manifest
@@ -0,0 +1 @@
+DIST blackbox-0.70.1.tar.bz2 492399 SHA256 92c2be347253f29b10063d579b4267a21516cb322a41b5e83d770fa6d44afd21 SHA512 6e8cf6fd04030a5f97ffd8dbe97aaa0f683f776e7237cdd46f2b93265cd8de665cffce5a352624a2235aa6c42628be13f98d565af765b3f06e95bff404fb0ccb WHIRLPOOL 8cab9c8ff749e4aea11bce5aca53127013cb5e36d791b426dded53dcf3db96590f6c43572df8ccd0f89e33b9ddfaa1f69cc1bda89cb7b85ec21298eba6730606
diff --git a/x11-wm/blackbox/blackbox-0.70.1-r1.ebuild b/x11-wm/blackbox/blackbox-0.70.1-r1.ebuild
new file mode 100644
index 000000000000..5a1ab87f0ac7
--- /dev/null
+++ b/x11-wm/blackbox/blackbox-0.70.1-r1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils
+
+DESCRIPTION="A small, fast, full-featured window manager for X"
+HOMEPAGE="http://blackboxwm.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}wm/${P}.tar.bz2"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="nls truetype debug"
+
+RDEPEND="x11-libs/libXft
+ x11-libs/libXt
+ nls? ( sys-devel/gettext )
+ truetype? ( media-libs/freetype )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ >=sys-apps/sed-4
+ x11-proto/xextproto"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gcc-4.3.patch \
+ "${FILESDIR}"/${P}-asneeded.patch \
+ "${FILESDIR}"/${P}-no-LDFLAGS-pc.patch
+
+ sed -i -e "s/_XUTIL_H_/_X11&/" lib/Util.hh || die #348556
+ sed -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/" -i configure.ac || die
+
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --sysconfdir=/etc/X11/${PN} \
+ $(use_enable debug) \
+ $(use_enable nls) \
+ $(use_enable truetype xft)
+}
+
+src_install() {
+ dodir /etc/X11/Sessions
+ echo "/usr/bin/blackbox" > "${D}/etc/X11/Sessions/${PN}"
+ fperms a+x /etc/X11/Sessions/${PN}
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/${PN}.desktop"
+
+ emake DESTDIR="${D}" install
+ dodoc AUTHORS ChangeLog* COMPLIANCE README* TODO
+
+ prune_libtool_files --all
+}
diff --git a/x11-wm/blackbox/blackbox-0.70.1.ebuild b/x11-wm/blackbox/blackbox-0.70.1.ebuild
new file mode 100644
index 000000000000..ee0d2f947287
--- /dev/null
+++ b/x11-wm/blackbox/blackbox-0.70.1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit autotools eutils
+
+DESCRIPTION="A small, fast, full-featured window manager for X"
+HOMEPAGE="http://blackboxwm.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}wm/${P}.tar.bz2"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd"
+IUSE="nls truetype debug"
+
+RDEPEND="x11-libs/libXft
+ x11-libs/libXt
+ nls? ( sys-devel/gettext )
+ truetype? ( media-libs/freetype )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ >=sys-apps/sed-4
+ x11-proto/xextproto"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ epatch "${FILESDIR}/${P}-gcc-4.3.patch" \
+ "${FILESDIR}/${P}-asneeded.patch"
+ if has_version ">=x11-libs/libX11-1.4.0"; then
+ sed -i -e "s/_XUTIL_H_/_X11&/" lib/Util.hh || die #348556
+ fi
+ sed -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/" -i configure.ac || die
+ eautoreconf
+}
+
+src_compile() {
+ econf \
+ --sysconfdir=/etc/X11/${PN} \
+ $(use_enable debug) \
+ $(use_enable nls) \
+ $(use_enable truetype xft)
+ emake || die "emake failed"
+}
+
+src_install() {
+ dodir /etc/X11/Sessions
+ echo "/usr/bin/blackbox" > "${D}/etc/X11/Sessions/${PN}"
+ fperms a+x /etc/X11/Sessions/${PN}
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/${PN}.desktop"
+
+ emake DESTDIR="${D}" install || die "emake install failed"
+ dodoc AUTHORS ChangeLog* COMPLIANCE README* TODO || die
+}
diff --git a/x11-wm/blackbox/files/blackbox-0.70.1-asneeded.patch b/x11-wm/blackbox/files/blackbox-0.70.1-asneeded.patch
new file mode 100644
index 000000000000..a6b1e22e62b5
--- /dev/null
+++ b/x11-wm/blackbox/files/blackbox-0.70.1-asneeded.patch
@@ -0,0 +1,49 @@
+Fixing build with as-needed. Enabling shared libs.
+
+http://bugs.gentoo.org/show_bug.cgi?id=248549
+
+--- src/Makefile.am
++++ src/Makefile.am
+@@ -22,7 +22,7 @@
+
+ DEFAULT_MENU = $(pkgdatadir)/menu
+ DEFAULT_STYLE = $(pkgdatadir)/styles/Gray
+-CPPFLAGS = @CPPFLAGS@ @SHAPE@ @XFT@ @DEBUG@ @NLS@ \
++AM_CPPFLAGS = @SHAPE@ @XFT@ @DEBUG@ @NLS@ \
+ -DLOCALEPATH=\"$(pkgdatadir)/nls\" \
+ -DDEFAULTMENU=\"$(DEFAULT_MENU)\" \
+ -DDEFAULTSTYLE=\"$(DEFAULT_STYLE)\" \
+--- lib/Makefile.am
++++ lib/Makefile.am
+@@ -62,7 +62,8 @@
+ Util.hh \
+ XDG.hh
+
+-libbt_la_LIBADD = @ICONV@ @LOCALE@
++libbt_la_LIBADD = @ICONV@ @LOCALE@ @xft_LIBS@
++libbt_la_CFLAGS = @xft_CFLAGS@
+
+ pkgconfigdir = $(libdir)/pkgconfig
+ nodist_pkgconfig_DATA = libbt.pc
+--- util/Makefile.am
++++ util/Makefile.am
+@@ -21,7 +21,7 @@
+ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ # DEALINGS IN THE SOFTWARE.
+
+-CPPFLAGS = @CPPFLAGS@ @DEBUG@ @NLS@ \
++AM_CPPFLAGS = @DEBUG@ @NLS@ \
+ -I$(top_srcdir)/lib
+
+ bin_SCRIPTS = bsetbg
+--- configure.ac
++++ configure.ac
+@@ -29,7 +29,7 @@
+ AC_PROG_INSTALL
+
+ dnl libbt shouldn't be shared by default (yet)
+-AC_DISABLE_SHARED
++dnl AC_DISABLE_SHARED
+ AC_PROG_LIBTOOL
+ AC_SUBST(LIBTOOL_DEPS)
+
diff --git a/x11-wm/blackbox/files/blackbox-0.70.1-gcc-4.3.patch b/x11-wm/blackbox/files/blackbox-0.70.1-gcc-4.3.patch
new file mode 100644
index 000000000000..1026bd5c80ee
--- /dev/null
+++ b/x11-wm/blackbox/files/blackbox-0.70.1-gcc-4.3.patch
@@ -0,0 +1,106 @@
+diff -Naupr blackbox-0.70.1.orig/lib/Image.cc blackbox-0.70.1/lib/Image.cc
+--- blackbox-0.70.1.orig/lib/Image.cc 2005-04-08 17:41:09.000000000 +0200
++++ blackbox-0.70.1/lib/Image.cc 2008-02-24 08:31:28.000000000 +0100
+@@ -42,8 +42,9 @@
+
+ #include <assert.h>
+ #include <math.h>
+-#include <stdio.h>
+-#include <stdlib.h>
++#include <cstdio>
++#include <cstdlib>
++#include <cstring>
+
+ // #define COLORTABLE_DEBUG
+ // #define MITSHM_DEBUG
+diff -Naupr blackbox-0.70.1.orig/lib/Resource.cc blackbox-0.70.1/lib/Resource.cc
+--- blackbox-0.70.1.orig/lib/Resource.cc 2005-04-06 23:16:50.000000000 +0200
++++ blackbox-0.70.1/lib/Resource.cc 2008-02-24 08:33:11.000000000 +0100
+@@ -28,7 +28,8 @@
+ #include <X11/Xlib.h>
+ #include <X11/Xresource.h>
+
+-#include <stdio.h>
++#include <cstdio>
++#include <cstring>
+
+
+ bt::Resource::Resource(void)
+diff -Naupr blackbox-0.70.1.orig/lib/XDG.cc blackbox-0.70.1/lib/XDG.cc
+--- blackbox-0.70.1.orig/lib/XDG.cc 2005-04-06 16:04:38.000000000 +0200
++++ blackbox-0.70.1/lib/XDG.cc 2008-02-24 08:34:11.000000000 +0100
+@@ -25,7 +25,8 @@
+ #include "Util.hh"
+ #include "XDG.hh"
+
+-#include <stdlib.h>
++#include <cstdlib>
++#include <algorithm>
+
+
+ // make sure directory names end with a slash
+diff -Naupr blackbox-0.70.1.orig/src/BlackboxResource.cc blackbox-0.70.1/src/BlackboxResource.cc
+--- blackbox-0.70.1.orig/src/BlackboxResource.cc 2005-10-18 09:34:46.000000000 +0200
++++ blackbox-0.70.1/src/BlackboxResource.cc 2008-02-24 08:34:49.000000000 +0100
+@@ -33,6 +33,8 @@
+ #include <X11/Xutil.h>
+ #include <X11/cursorfont.h>
+
++#include <cstring>
++
+
+ BlackboxResource::BlackboxResource(const std::string& rc): rc_file(rc) {
+ screen_resources = 0;
+diff -Naupr blackbox-0.70.1.orig/src/main.cc blackbox-0.70.1/src/main.cc
+--- blackbox-0.70.1.orig/src/main.cc 2005-01-03 10:42:57.000000000 +0100
++++ blackbox-0.70.1/src/main.cc 2008-02-24 08:37:16.000000000 +0100
+@@ -34,7 +34,8 @@
+ #include "blackbox.hh"
+ #include "../version.h"
+
+-#include <stdio.h>
++#include <cstdio>
++#include <cstring>
+
+
+ static void showHelp(int exitval) {
+diff -Naupr blackbox-0.70.1.orig/src/Screen.cc blackbox-0.70.1/src/Screen.cc
+--- blackbox-0.70.1.orig/src/Screen.cc 2005-10-18 10:07:22.000000000 +0200
++++ blackbox-0.70.1/src/Screen.cc 2008-02-24 08:35:46.000000000 +0100
+@@ -45,8 +45,9 @@
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <assert.h>
+-#include <ctype.h>
+ #include <dirent.h>
++#include <cctype>
++#include <cstring>
+
+
+ static bool running = true;
+diff -Naupr blackbox-0.70.1.orig/src/ScreenResource.cc blackbox-0.70.1/src/ScreenResource.cc
+--- blackbox-0.70.1.orig/src/ScreenResource.cc 2005-04-13 07:54:08.000000000 +0200
++++ blackbox-0.70.1/src/ScreenResource.cc 2008-02-24 08:36:31.000000000 +0100
+@@ -33,6 +33,8 @@
+
+ #include <assert.h>
+
++#include <cstring>
++
+
+ static const int iconify_width = 9;
+ static const int iconify_height = 9;
+diff -Naupr blackbox-0.70.1.orig/util/bsetroot.cc blackbox-0.70.1/util/bsetroot.cc
+--- blackbox-0.70.1.orig/util/bsetroot.cc 2005-03-15 08:01:37.000000000 +0100
++++ blackbox-0.70.1/util/bsetroot.cc 2008-02-24 08:38:41.000000000 +0100
+@@ -30,7 +30,9 @@
+ #include <cctype>
+
+ #include <X11/Xatom.h>
+-#include <stdio.h>
++#include <cstdio>
++#include <cstdlib>
++#include <cstring>
+
+
+ // ignore all X errors
diff --git a/x11-wm/blackbox/files/blackbox-0.70.1-no-LDFLAGS-pc.patch b/x11-wm/blackbox/files/blackbox-0.70.1-no-LDFLAGS-pc.patch
new file mode 100644
index 000000000000..e907b588b158
--- /dev/null
+++ b/x11-wm/blackbox/files/blackbox-0.70.1-no-LDFLAGS-pc.patch
@@ -0,0 +1,14 @@
+Fix LDFGAS leak to .pc file:
+> * QA Notice: pkg-config files with wrong LDFLAGS detected:
+> * /usr/lib64/pkgconfig/libbt.pc:Libs: -L${libdir} -lbt -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu -L/usr/lib -L/usr/local/lib
+diff --git a/lib/libbt.pc.in b/lib/libbt.pc.in
+index a2a8869..8246cb0 100644
+--- a/lib/libbt.pc.in
++++ b/lib/libbt.pc.in
+@@ -7,5 +7,5 @@ Name: Blackbox Toolbox
+ Description: Utility class library for writing small applications
+ Requires: @XFT_PKGCONFIG@
+ Version: @VERSION@
+-Libs: -L${libdir} -lbt @LDFLAGS@ @ICONV@ @LOCALE@
++Libs: -L${libdir} -lbt @ICONV@ @LOCALE@
+ Cflags: -I${includedir}/bt
diff --git a/x11-wm/blackbox/files/blackbox.desktop b/x11-wm/blackbox/files/blackbox.desktop
new file mode 100644
index 000000000000..c84ce24a2a53
--- /dev/null
+++ b/x11-wm/blackbox/files/blackbox.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=Blackbox
+Comment=This session logs you into Blackbox
+Exec=blackbox
+TryExec=blackbox
+Icon=
+Type=Application
diff --git a/x11-wm/blackbox/metadata.xml b/x11-wm/blackbox/metadata.xml
new file mode 100644
index 000000000000..0deb53ae1fa4
--- /dev/null
+++ b/x11-wm/blackbox/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ </maintainer>
+ <longdescription>
+ Blackbox is that fast, light window manager you have been looking for
+ without all those annoying library dependencies. If you have a C++
+ compiler and the X Window System you can compile and use it.
+ </longdescription>
+ <upstream>
+ <remote-id type="sourceforge">blackboxwm</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/x11-wm/bspwm/Manifest b/x11-wm/bspwm/Manifest
new file mode 100644
index 000000000000..b9e3b319acad
--- /dev/null
+++ b/x11-wm/bspwm/Manifest
@@ -0,0 +1,2 @@
+DIST bspwm-0.8.8.tar.gz 66159 SHA256 378c5e42e9058a22e519a8f727e7d078eb5945915adb6edb17e2471310e73790 SHA512 09614549410d2f6bd58d1190e8008256077433481bb4f91426fbf14ef74c3bff92f3b2d2c72476b6439ad83807c7368591af46a0c34ec658bcc5b9c6f940ca55 WHIRLPOOL 331d089c7545a5fe6325e42aa9603f9dcb81d28fd9182329dbc50a0828fafa661ce12885894d728ad99f0d04ca5a2773de257b91f62e1be3f272e0ee8a7b5674
+DIST bspwm-0.8.9.tar.gz 65604 SHA256 750c76132914661d8d5edf7809e9b601977215d31e747dd780c60fd562913d55 SHA512 77dd3d10278519bdcba02ab3309617d078428953d2944a1a5013b7ac87ae9b9c3e405760edfc78a6d740c383c8bf083598885448219f3a60e6f912389343b4f7 WHIRLPOOL dc3153b082616b44d71348b604e5f923a603b4ea75e9665c6a7ad384bafdd33da2f83da3275af671dbac614aefd953e990355cb0713504037ef57003cc46261b
diff --git a/x11-wm/bspwm/bspwm-0.8.8-r1.ebuild b/x11-wm/bspwm/bspwm-0.8.8-r1.ebuild
new file mode 100644
index 000000000000..02ef4f3c3783
--- /dev/null
+++ b/x11-wm/bspwm/bspwm-0.8.8-r1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Tiling window manager based on binary space partitioning"
+HOMEPAGE="https://github.com/baskerville/bspwm/"
+SRC_URI="https://github.com/baskerville/bspwm/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="examples"
+
+DEPEND="
+ x11-libs/libxcb
+ x11-libs/xcb-util-wm
+"
+RDEPEND="${DEPEND}
+ x11-misc/sxhkd
+"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-flags.patch
+ epatch "${FILESDIR}"/${P}-desktop.patch
+}
+
+src_compile() {
+ emake PREFIX=/usr CC="$(tc-getCC)"
+}
+
+src_install() {
+ emake DESTDIR="${D}" PREFIX=/usr install
+ dodoc doc/{CONTRIBUTING,MISC,TODO}.md
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN}
+
+ insinto /usr/share/xsessions
+ doins contrib/lightdm/bspwm.desktop
+
+ insinto /etc/xdg/sxhkd
+ doins examples/sxhkdrc
+
+ if use examples ; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/x11-wm/bspwm/bspwm-0.8.9.ebuild b/x11-wm/bspwm/bspwm-0.8.9.ebuild
new file mode 100644
index 000000000000..a3d22f1f9225
--- /dev/null
+++ b/x11-wm/bspwm/bspwm-0.8.9.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Tiling window manager based on binary space partitioning"
+HOMEPAGE="https://github.com/baskerville/bspwm/"
+SRC_URI="https://github.com/baskerville/bspwm/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="examples"
+
+DEPEND="
+ x11-libs/libxcb
+ x11-libs/xcb-util-wm
+"
+RDEPEND="${DEPEND}
+ x11-misc/sxhkd
+"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.8.8-flags.patch
+ epatch "${FILESDIR}"/${PN}-0.8.8-desktop.patch
+}
+
+src_compile() {
+ emake PREFIX=/usr CC="$(tc-getCC)"
+}
+
+src_install() {
+ emake DESTDIR="${D}" PREFIX=/usr install
+ dodoc doc/{CONTRIBUTING,MISC,TODO}.md
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN}
+
+ insinto /usr/share/xsessions
+ doins contrib/lightdm/bspwm.desktop
+
+ insinto /etc/xdg/sxhkd
+ doins examples/sxhkdrc
+
+ if use examples ; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/x11-wm/bspwm/files/bspwm-0.8.8-desktop.patch b/x11-wm/bspwm/files/bspwm-0.8.8-desktop.patch
new file mode 100644
index 000000000000..589a5abed893
--- /dev/null
+++ b/x11-wm/bspwm/files/bspwm-0.8.8-desktop.patch
@@ -0,0 +1,9 @@
+--- bspwm-0.8.8/contrib/lightdm/bspwm.desktop
++++ bspwm-0.8.8/contrib/lightdm/bspwm.desktop
+@@ -2,5 +2,5 @@
+ Encoding=UTF-8
+ Name=bspwm
+ Comment=Launch a bspwm session
+-Exec=/usr/bin/bspwm-session
++Exec=/etc/X11/Sessions/bspwm
+ Type=XSession
diff --git a/x11-wm/bspwm/files/bspwm-0.8.8-flags.patch b/x11-wm/bspwm/files/bspwm-0.8.8-flags.patch
new file mode 100644
index 000000000000..b0dcacac4dba
--- /dev/null
+++ b/x11-wm/bspwm/files/bspwm-0.8.8-flags.patch
@@ -0,0 +1,15 @@
+--- bspwm-0.8.8/Makefile
++++ bspwm-0.8.8/Makefile
+@@ -18,11 +18,9 @@
+ CL_SRC = bspc.c helpers.c
+ CL_OBJ = $(CL_SRC:.c=.o)
+
+-all: CFLAGS += -Os
+-all: LDFLAGS += -s
+ all: bspwm bspc
+
+-debug: CFLAGS += -O0 -g -DDEBUG
++debug: CFLAGS += -DDEBUG
+ debug: bspwm bspc
+
+ include Sourcedeps
diff --git a/x11-wm/bspwm/files/bspwm-session b/x11-wm/bspwm/files/bspwm-session
new file mode 100644
index 000000000000..e51ead1b9b54
--- /dev/null
+++ b/x11-wm/bspwm/files/bspwm-session
@@ -0,0 +1,90 @@
+#!/bin/sh
+# bspwm Xsession starter, based on Xsession from x11-apps/xinit
+
+# redirect errors to a file in user's home directory if we can
+for errfile in "$HOME/.bspwm-errors" "${TMPDIR-/tmp}/bspwm-$USER" "/tmp/bspwm-$USER"
+do
+ if ( cp /dev/null "$errfile" 2> /dev/null )
+ then
+ chmod 600 "$errfile"
+ exec > "$errfile" 2>&1
+ break
+ fi
+done
+
+userresources=$HOME/.Xresources
+usermodmap=$HOME/.Xmodmap
+userxkbmap=$HOME/.Xkbmap
+
+sysresources=/etc/X11/Xresources
+sysmodmap=/etc/X11/Xmodmap
+sysxkbmap=/etc/X11/Xkbmap
+
+rh6sysresources=/etc/X11/xinit/Xresources
+rh6sysmodmap=/etc/X11/xinit/Xmodmap
+
+# merge in defaults
+if [ -f "$rh6sysresources" ]; then
+ xrdb -merge "$rh6sysresources"
+fi
+
+if [ -f "$sysresources" ]; then
+ xrdb -merge "$sysresources"
+fi
+
+if [ -f "$userresources" ]; then
+ xrdb -merge "$userresources"
+fi
+
+# merge in keymaps
+if [ -f "$sysxkbmap" ]; then
+ setxkbmap `cat "$sysxkbmap"`
+ XKB_IN_USE=yes
+fi
+
+if [ -f "$userxkbmap" ]; then
+ setxkbmap `cat "$userxkbmap"`
+ XKB_IN_USE=yes
+fi
+
+#
+# Eeek, this seems like too much magic here
+#
+if [ -z "$XKB_IN_USE" -a ! -L /etc/X11/X ]; then
+ if grep '^exec.*/Xsun' /etc/X11/X > /dev/null 2>&1 && [ -f /etc/X11/XF86Config ]; then
+ xkbsymbols=`sed -n -e 's/^[ ]*XkbSymbols[ ]*"\(.*\)".*$/\1/p' /etc/X11/XF86Config /etc/X11/xorg.conf`
+ if [ -n "$xkbsymbols" ]; then
+ setxkbmap -symbols "$xkbsymbols"
+ XKB_IN_USE=yes
+ fi
+ fi
+fi
+
+# xkb and xmodmap don't play nice together
+if [ -z "$XKB_IN_USE" ]; then
+ if [ -f "$rh6sysmodmap" ]; then
+ xmodmap "$rh6sysmodmap"
+ fi
+
+ if [ -f "$sysmodmap" ]; then
+ xmodmap "$sysmodmap"
+ fi
+
+ if [ -f "$usermodmap" ]; then
+ xmodmap "$usermodmap"
+ fi
+fi
+
+unset XKB_IN_USE
+
+# run all system xinitrc shell scripts.
+if [ -d /etc/X11/xinit/xinitrc.d ]; then
+ for i in /etc/X11/xinit/xinitrc.d/* ; do
+ if [ -x "$i" ]; then
+ . "$i"
+ fi
+ done
+fi
+
+exec /usr/bin/sxhkd &
+exec /usr/bin/bspwm
diff --git a/x11-wm/bspwm/metadata.xml b/x11-wm/bspwm/metadata.xml
new file mode 100644
index 000000000000..5d305a00684c
--- /dev/null
+++ b/x11-wm/bspwm/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>radhermit@gentoo.org</email>
+ <name>Tim Harder</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">baskerville/bspwm</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/x11-wm/compiz-fusion/compiz-fusion-0.8.8.ebuild b/x11-wm/compiz-fusion/compiz-fusion-0.8.8.ebuild
new file mode 100644
index 000000000000..a20b32a3dbc4
--- /dev/null
+++ b/x11-wm/compiz-fusion/compiz-fusion-0.8.8.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Compiz Fusion (meta)"
+HOMEPAGE="http://www.compiz.org/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE="emerald gnome kde unsupported"
+
+RDEPEND="
+ >=x11-wm/compiz-${PV}
+ >=x11-plugins/compiz-plugins-main-${PV}
+ >=x11-plugins/compiz-plugins-extra-${PV}
+ unsupported? ( >=x11-plugins/compiz-plugins-unsupported-${PV} )
+ >=x11-apps/ccsm-0.8.4
+ emerald? ( >=x11-wm/emerald-${PV} )
+ gnome? ( >=x11-libs/compizconfig-backend-gconf-${PV} )
+ kde? ( >=x11-libs/compizconfig-backend-kconfig4-${PV} )"
+
+pkg_postinst() {
+ ewarn "If you want to try out simple-ccsm, you'll need to emerge it"
+ ewarn "If you want to use emerald, set the emerald use flag"
+}
diff --git a/x11-wm/compiz-fusion/metadata.xml b/x11-wm/compiz-fusion/metadata.xml
new file mode 100644
index 000000000000..9e592b3de0a6
--- /dev/null
+++ b/x11-wm/compiz-fusion/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<use>
+ <flag name="emerald">Install the <pkg>x11-wm/emerald</pkg> package.</flag>
+ <flag name="unsupported">Install the <pkg>x11-plugins/compiz-fusion-plugins-unsupported</pkg> package.</flag>
+</use>
+<herd>desktop-effects</herd>
+<longdescription>
+compiz-fusion is a community-driven project that is aimed at extending the compiz window manager.
+</longdescription>
+</pkgmetadata>
diff --git a/x11-wm/compiz/Manifest b/x11-wm/compiz/Manifest
new file mode 100644
index 000000000000..7c282bc5c5c5
--- /dev/null
+++ b/x11-wm/compiz/Manifest
@@ -0,0 +1 @@
+DIST compiz-0.8.8.tar.bz2 1123892 SHA256 3ba555b0d6d536850a227d37d6ebc5cd5b15ee5bad83d7956529a27b870977e3 SHA512 6e3bad018835fdbc1b0e5ecb51a46a77a6531d46d77ee3ae4169273632ea9a6839c78300b18e2198c41698517efa65ded75387785b0c5bbbb6da41498451b644 WHIRLPOOL fa1d9b5e443d45a4615201a85a74dd025066620339ebac58b4fd5c71c19db731009c013ceee93f0345b46c413211424bc4c813d48e07d6cea874024a2b562ba2
diff --git a/x11-wm/compiz/compiz-0.8.8-r3.ebuild b/x11-wm/compiz/compiz-0.8.8-r3.ebuild
new file mode 100644
index 000000000000..2b313d2745b5
--- /dev/null
+++ b/x11-wm/compiz/compiz-0.8.8-r3.ebuild
@@ -0,0 +1,168 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils gnome2-utils
+
+DESCRIPTION="OpenGL window and compositing manager"
+HOMEPAGE="http://www.compiz.org/"
+SRC_URI="http://releases.compiz.org/${PV}/${P}.tar.bz2"
+
+LICENSE="GPL-2 LGPL-2.1 MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE="+cairo dbus fuse gnome gconf gtk kde +svg"
+
+COMMONDEPEND="
+ >=dev-libs/glib-2
+ dev-libs/libxml2
+ dev-libs/libxslt
+ media-libs/libpng:0=
+ >=media-libs/mesa-6.5.1-r1
+ >=x11-base/xorg-server-1.1.1-r1
+ >=x11-libs/libX11-1.4
+ x11-libs/libxcb
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libICE
+ x11-libs/libSM
+ >=x11-libs/libXrender-0.8.4
+ >=x11-libs/startup-notification-0.7
+ virtual/glu
+ cairo? (
+ x11-libs/cairo[X]
+ )
+ dbus? (
+ >=sys-apps/dbus-1.0
+ dev-libs/dbus-glib
+ )
+ fuse? ( sys-fs/fuse )
+ gnome? (
+ >=gnome-base/gnome-control-center-2.16.1:2
+ gnome-base/gnome-desktop:2
+ gconf? ( gnome-base/gconf:2 )
+ )
+ gtk? (
+ >=x11-libs/gtk+-2.8.0:2
+ >=x11-libs/libwnck-2.18.3:1
+ x11-libs/pango
+ )
+ kde? ( >=kde-base/kwin-4.2.0 )
+ svg? (
+ >=gnome-base/librsvg-2.14.0:2
+ >=x11-libs/cairo-1.0
+ )
+"
+
+DEPEND="${COMMONDEPEND}
+ virtual/pkgconfig
+ x11-proto/damageproto
+ x11-proto/xineramaproto
+"
+
+RDEPEND="${COMMONDEPEND}
+ x11-apps/mesa-progs
+ x11-apps/xdpyinfo
+ x11-apps/xset
+ x11-apps/xvinfo
+"
+
+DOCS=( AUTHORS ChangeLog NEWS README TODO )
+
+src_prepare() {
+ echo gtk/gnome/compiz-wm.desktop.in >> po/POTFILES.skip
+ echo metadata/core.xml.in >> po/POTFILES.skip
+
+ # Patch for compatibility with gcc 4.7
+ epatch "${FILESDIR}"/${PN}-gcc-4.7.patch
+
+ if ! use gnome || ! use gconf; then
+ epatch "${FILESDIR}"/${PN}-no-gconf.patch
+ fi
+ if use kde; then
+ # patch for KDE 4.8 compatibility. Picked up from stuff overlay
+ has_version ">=kde-base/kwin-4.8" && epatch "${FILESDIR}"/${PN}-kde-4.8.patch
+ # patch for KDE 4.9 compatibility. Picked up from http://cgit.compiz.org
+ has_version ">=kde-base/kwin-4.9" && epatch "${FILESDIR}"/${PN}-kde-4.9.patch
+ # patch for KDE 4.10 compatibility. Picked up from stuff overlay
+ has_version ">=kde-base/kwin-4.10" && epatch "${FILESDIR}"/${PN}-kde-4.10.patch
+ fi
+ eautoreconf
+}
+
+src_configure() {
+ local myconf
+
+ # We make gconf optional by itself, but only if gnome is also
+ # enabled, otherwise we simply disable it.
+ if use gnome; then
+ myconf="${myconf} $(use_enable gconf)"
+ else
+ myconf="${myconf} --disable-gconf"
+ fi
+
+ econf \
+ --enable-fast-install \
+ --disable-static \
+ --disable-gnome-keybindings \
+ --with-default-plugins \
+ $(use_enable svg librsvg) \
+ $(use_enable cairo annotate) \
+ $(use_enable dbus) \
+ $(use_enable dbus dbus-glib) \
+ $(use_enable fuse) \
+ $(use_enable gnome) \
+ $(use_enable gnome metacity) \
+ $(use_enable gtk) \
+ $(use_enable kde kde4) \
+ --disable-kde \
+ ${myconf}
+}
+
+src_install() {
+ default
+ prune_libtool_files --all
+
+ # Install compiz-manager
+ dobin "${FILESDIR}"/compiz-manager
+
+ # Add the full-path to lspci
+ sed -i "s#lspci#/usr/sbin/lspci#" "${D}/usr/bin/compiz-manager" || die
+
+ # Fix the hardcoded lib paths
+ sed -i "s#/lib/#/$(get_libdir)/#g" "${D}/usr/bin/compiz-manager" || die
+
+ # Create gentoo's config file
+ dodir /etc/xdg/compiz
+
+ cat <<- EOF > "${D}/etc/xdg/compiz/compiz-manager"
+ COMPIZ_BIN_PATH="/usr/bin/"
+ PLUGIN_PATH="/usr/$(get_libdir)/compiz/"
+ LIBGL_NVIDIA="/usr/$(get_libdir)/opengl/xorg-x11/lib/libGL.so.1.2"
+ LIBGL_FGLRX="/usr/$(get_libdir)/opengl/xorg-x11/lib/libGL.so.1.2"
+ KWIN="$(type -p kwin)"
+ METACITY="$(type -p metacity)"
+ SKIP_CHECKS="yes"
+ EOF
+
+ domenu "${FILESDIR}"/compiz.desktop
+}
+
+pkg_preinst() {
+ use gnome && use gconf && gnome2_gconf_savelist
+}
+
+pkg_postinst() {
+ use gnome && use gconf && gnome2_gconf_install
+
+ ewarn "If you update to x11-wm/metacity-2.24 after you install ${P},"
+ ewarn "gtk-window-decorator will crash until you reinstall ${PN} again."
+}
+
+pkg_prerm() {
+ use gnome && gnome2_gconf_uninstall
+}
diff --git a/x11-wm/compiz/files/compiz-gcc-4.7.patch b/x11-wm/compiz/files/compiz-gcc-4.7.patch
new file mode 100644
index 000000000000..28315baec5b8
--- /dev/null
+++ b/x11-wm/compiz/files/compiz-gcc-4.7.patch
@@ -0,0 +1,38 @@
+--- kde/window-decorator-kde4/window.cpp 2010-05-21 11:18:14.000000000 +0000
++++ kde/window-decorator-kde4/window.cpp 2012-09-12 18:05:00.000000000 +0000
+@@ -59,6 +59,9 @@
+
+ #include "paintredirector.h"
+
++// header for gcc-4.7 compatibility
++#include "unistd.h"
++
+ KWD::Window::Window (WId parentId,
+ WId clientId,
+ WId frame,
+--- configure.ac.orig 2012-09-12 23:39:54.093812000 +0400
++++ configure.ac 2012-09-12 23:40:37.253686000 +0400
+@@ -72,11 +72,6 @@
+ *) CFLAGS="$CFLAGS -Wnested-externs" ;;
+ esac
+
+- case " $CFLAGS " in
+- *[[\ \ ]]-D_FORTIFY_SOURCE=2[[\ \ ]]*) ;;
+- *) CFLAGS="$CFLAGS -D_FORTIFY_SOURCE=2" ;;
+- esac
+-
+ if test "x$enable_ansi" = "xyes"; then
+ case " $CFLAGS " in
+ *[[\ \ ]]-ansi[[\ \ ]]*) ;;
+@@ -95,11 +90,6 @@
+ *[[\ \ ]]-Wall[[\ \ ]]*) ;;
+ *) CXXFLAGS="$CXXFLAGS -Wall" ;;
+ esac
+-
+- case " $CXXFLAGS " in
+- *[[\ \ ]]-D_FORTIFY_SOURCE=2[[\ \ ]]*) ;;
+- *) CXXFLAGS="$CXXFLAGS -D_FORTIFY_SOURCE=2" ;;
+- esac
+ fi
+
+ AC_C_BIGENDIAN
diff --git a/x11-wm/compiz/files/compiz-kde-4.10.patch b/x11-wm/compiz/files/compiz-kde-4.10.patch
new file mode 100644
index 000000000000..a30d54b90fa4
--- /dev/null
+++ b/x11-wm/compiz/files/compiz-kde-4.10.patch
@@ -0,0 +1,30 @@
+--- kde/window-decorator-kde4/window.cpp 2012-11-14 10:17:09 +0000
++++ kde/window-decorator-kde4/window.cpp 2012-11-23 06:43:18 +0000
+@@ -554,6 +554,15 @@
+ showWindowMenu (pos.bottomLeft ());
+ }
+
++void KWD::Window::showApplicationMenu (const QPoint &p)
++{
++}
++
++bool KWD::Window::menuAvailable () const
++{
++ return false;
++}
++
+ KWD::Options::MouseCommand
+ KWD::Window::buttonToCommand (Qt::MouseButtons button)
+ {
+
+--- kde/window-decorator-kde4/window.h 2012-09-03 07:19:30 +0000
++++ kde/window-decorator-kde4/window.h 2012-11-23 06:43:18 +0000
+@@ -92,6 +92,8 @@
+ virtual void processMousePressEvent (QMouseEvent *);
+ virtual void showWindowMenu (const QRect &);
+ virtual void showWindowMenu (const QPoint &);
++ virtual void showApplicationMenu (const QPoint &);
++ virtual bool menuAvailable () const;
+ virtual void performWindowOperation (WindowOperation);
+ virtual void setMask (const QRegion &, int);
+ virtual bool isPreview (void) const;
diff --git a/x11-wm/compiz/files/compiz-kde-4.8.patch b/x11-wm/compiz/files/compiz-kde-4.8.patch
new file mode 100644
index 000000000000..f31751ba517d
--- /dev/null
+++ b/x11-wm/compiz/files/compiz-kde-4.8.patch
@@ -0,0 +1,17 @@
+diff -ur compiz-0.8.8-orig//kde/window-decorator-kde4/window.cpp compiz-0.8.8//kde/window-decorator-kde4/window.cpp
+--- compiz-0.8.8-orig//kde/window-decorator-kde4/window.cpp 2010-05-21 14:18:14.000000000 +0300
++++ compiz-0.8.8//kde/window-decorator-kde4/window.cpp 2012-01-27 21:21:39.000000000 +0200
+@@ -986,10 +986,10 @@
+ {
+ Atom atom = Atoms::compizWindowBlurDecor;
+ QRegion topQRegion, bottomQRegion, leftQRegion, rightQRegion;
+- Region topRegion = NULL;
+- Region bottomRegion = NULL;
+- Region leftRegion = NULL;
+- Region rightRegion = NULL;
++ ::Region topRegion = NULL;
++ ::Region bottomRegion = NULL;
++ ::Region leftRegion = NULL;
++ ::Region rightRegion = NULL;
+ int size = 0;
+ int w, h;
diff --git a/x11-wm/compiz/files/compiz-kde-4.9.patch b/x11-wm/compiz/files/compiz-kde-4.9.patch
new file mode 100644
index 000000000000..7b56da95c805
--- /dev/null
+++ b/x11-wm/compiz/files/compiz-kde-4.9.patch
@@ -0,0 +1,196 @@
+From 3c6f698c12f455661807c4115feaa73007fc33d1 Mon Sep 17 00:00:00 2001
+From: Dennis Kasprzyk <onestone@compiz.org>
+Date: Mon, 06 Aug 2012 18:23:17 +0000
+Subject: KDE 4.9 support.
+
+Little modification for compatibility with KDE 4.8 patch was added by Sergey Popov
+
+---
+diff --git a/kde/window-decorator-kde4/window.cpp b/kde/window-decorator-kde4/window.cpp
+index a65f99f..78d1a47 100644
+--- a/kde/window-decorator-kde4/window.cpp
++++ b/kde/window-decorator-kde4/window.cpp
+@@ -768,6 +768,22 @@ KWD::Window::transparentRect () const
+ return QRect ();
+ }
+
++KDecorationDefines::WindowOperation
++KWD::Window::buttonToWindowOperation(Qt::MouseButtons button)
++{
++ Options::MouseCommand com = buttonToCommand (button);
++
++ if (com == Options::MouseOperationsMenu)
++ return KDecorationDefines::OperationsOp;
++
++ return KDecorationDefines::NoOp;
++}
++
++
++#endif
++
++#if KDE_IS_VERSION(4,3,90) && !KDE_IS_VERSION(4, 8, 80)
++
+ bool
+ KWD::Window::isClientGroupActive ()
+ {
+@@ -837,19 +853,82 @@ KWD::Window::displayClientMenu (int index, const QPoint& pos)
+ showWindowMenu (pos);
+ }
+
+-KDecorationDefines::WindowOperation
+-KWD::Window::buttonToWindowOperation(Qt::MouseButtons button)
++#endif
++
++#if KDE_IS_VERSION(4,8,80)
++QString
++KWD::Window::caption(int idx) const
+ {
+- Options::MouseCommand com = buttonToCommand (button);
++ return mName;
++}
+
+- if (com == Options::MouseOperationsMenu)
+- return KDecorationDefines::OperationsOp;
++void
++KWD::Window::closeTab(long id)
++{
++ closeWindow ();
++}
+
+- return KDecorationDefines::NoOp;
++void
++KWD::Window::closeTabGroup()
++{
++ closeWindow ();
++}
++
++long
++KWD::Window::currentTabId() const
++{
++ return (long) mClientId;
++}
++
++QIcon
++KWD::Window::icon(int idx) const
++{
++ QIcon icon (mIcon);
++ icon.addPixmap (mMiniIcon);
++ return icon;
++}
++
++void
++KWD::Window::setCurrentTab(long id)
++{
++}
++
++void
++KWD::Window::showWindowMenu(const QPoint& pos, long id)
++{
++ showWindowMenu (pos);
++}
++
++void
++KWD::Window::tab_A_before_B(long A, long B)
++{
++}
++
++void
++KWD::Window::tab_A_behind_B(long A, long B)
++{
++}
++
++int
++KWD::Window::tabCount() const
++{
++ return 1;
++}
++
++long
++KWD::Window::tabId(int idx) const
++{
++ return (long) mClientId;
++}
++
++void
++KWD::Window::untab(long id, const QRect& newGeom)
++{
+ }
+
+ #endif
+
++
+ void
+ KWD::Window::createDecoration (void)
+ {
+@@ -987,14 +1066,14 @@ KWD::Window::updateBlurProperty (int topOffset,
+ int leftOffset,
+ int rightOffset)
+ {
+- Atom atom = Atoms::compizWindowBlurDecor;
+- QRegion topQRegion, bottomQRegion, leftQRegion, rightQRegion;
+- ::Region topRegion = NULL;
+- ::Region bottomRegion = NULL;
+- ::Region leftRegion = NULL;
+- ::Region rightRegion = NULL;
+- int size = 0;
+- int w, h;
++ Atom atom = Atoms::compizWindowBlurDecor;
++ QRegion topQRegion, bottomQRegion, leftQRegion, rightQRegion;
++ _XRegion *topRegion = NULL;
++ _XRegion *bottomRegion = NULL;
++ _XRegion *leftRegion = NULL;
++ _XRegion *rightRegion = NULL;
++ int size = 0;
++ int w, h;
+
+ w = mGeometry.width () + mBorder.left + mBorder.right;
+ h = mGeometry.height () + mBorder.top + mBorder.bottom;
+diff --git a/kde/window-decorator-kde4/window.h b/kde/window-decorator-kde4/window.h
+index c2b274b..1ddfbd1 100644
+--- a/kde/window-decorator-kde4/window.h
++++ b/kde/window-decorator-kde4/window.h
+@@ -114,7 +114,10 @@ class Window: public QObject, public KDecorationBridgeUnstable {
+ virtual bool compositingActive () const;
+ #if KDE_IS_VERSION(4,3,90)
+ virtual QRect transparentRect () const;
+-
++ virtual WindowOperation
++ buttonToWindowOperation(Qt::MouseButtons button);
++#endif
++#if KDE_IS_VERSION(4,3,90) && !KDE_IS_VERSION(4, 8, 80)
+ virtual bool isClientGroupActive ();
+ virtual QList<ClientGroupItem> clientGroupItems () const;
+ virtual long itemId (int index);
+@@ -126,10 +129,27 @@ class Window: public QObject, public KDecorationBridgeUnstable {
+ virtual void closeClientGroupItem (int index);
+ virtual void closeAllInClientGroup ();
+ virtual void displayClientMenu (int index, const QPoint& pos);
+-
+- virtual WindowOperation
+- buttonToWindowOperation(Qt::MouseButtons button);
++
++#endif
++#if KDE_IS_VERSION(4,8,80)
++ using KDecorationBridge::caption;
++ virtual QString caption(int idx) const;
++ virtual void closeTab(long id);
++ virtual void closeTabGroup();
++ virtual long currentTabId() const;
++ using KDecorationBridge::icon;
++ virtual QIcon icon(int idx) const;
++ virtual void setCurrentTab(long id);
++ using KDecorationBridge::showWindowMenu;
++ virtual void showWindowMenu(const QPoint& pos, long id);
++ virtual void tab_A_before_B(long A, long B);
++ virtual void tab_A_behind_B(long A, long B);
++ virtual int tabCount() const;
++ virtual long tabId(int idx) const;
++ virtual void untab(long id, const QRect& newGeom);
+ #endif
++
++
+ virtual bool eventFilter (QObject* o, QEvent* e);
+
+ void handleActiveChange (void);
+--
+cgit v0.8.3.1-30-gff3a
diff --git a/x11-wm/compiz/files/compiz-manager b/x11-wm/compiz/files/compiz-manager
new file mode 100644
index 000000000000..74d45da2590e
--- /dev/null
+++ b/x11-wm/compiz/files/compiz-manager
@@ -0,0 +1,384 @@
+#!/bin/sh
+# Compiz Manager wrapper script
+#
+# Copyright (c) 2007 Kristian Lyngstøl <kristian@bohemians.org>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+#
+#
+# Contributions by: Treviño (3v1n0) <trevi55@gmail.com>, Ubuntu Packages
+#
+# Much of this code is based on Beryl code, also licensed under the GPL.
+# This script will detect what options we need to pass to compiz to get it
+# started, and start a default plugin and possibly window decorator.
+#
+
+
+COMPIZ_BIN_PATH="/usr/bin/" # For window decorators and compiz
+PLUGIN_PATH="/usr/lib/compiz/"
+GLXINFO="/usr/bin/glxinfo"
+KWIN="/usr/bin/kwin"
+METACITY="/usr/bin/metacity"
+COMPIZ_NAME="compiz" # Final name for compiz (compiz.real)
+
+# For Xgl LD_PRELOAD
+LIBGL_NVIDIA="/usr/lib/nvidia/libGL.so.1.2.xlibmesa"
+LIBGL_FGLRX="/usr/lib/fglrx/libGL.so.1.2.xlibmesa"
+
+# Minimum amount of memory (in kilo bytes) that nVidia cards need
+# to be allowed to start
+# Set to 262144 to require 256MB
+NVIDIA_MEMORY="65536" # 64MB
+NVIDIA_SETTINGS="nvidia-settings" # Assume it's in the path by default
+
+# For detecting what driver is in use, the + is for one or more /'s
+XORG_DRIVER_PATH="/usr/lib/xorg/modules/drivers/+"
+
+FALLBACKWM="${METACITY}"
+FALLBACKWM_OPTIONS="--replace $@"
+
+# Driver whitelist
+WHITELIST="nvidia intel ati radeon i810"
+
+# blacklist based on the pci ids
+# See http://wiki.compiz-fusion.org/Hardware/Blacklist for details
+T=" 1002:5954 1002:5854 1002:5955" # ati rs480
+T="$T 1002:4153" # ATI Rv350
+T="$T 8086:2982 8086:2992 8086:29a2 8086:2a02 8086:2a12" # intel 965
+BLACKLIST_PCIIDS="$T"
+unset T
+
+COMPIZ_OPTIONS="--ignore-desktop-hints --replace"
+COMPIZ_PLUGINS=""
+ENV=""
+
+# Use emerald by default if it exist
+USE_EMERALD="yes"
+
+# No indirect by default
+INDIRECT="no"
+
+# Default X.org log if xset q doesn't reveal it
+XORG_DEFAULT_LOG="/var/log/Xorg.0.log"
+
+# Set to yes to enable verbose
+VERBOSE="yes"
+
+# Echos the arguments if verbose
+verbose()
+{
+ if [ "x$VERBOSE" = "xyes" ]; then
+ printf "$*"
+ fi
+}
+
+# abort script and run fallback windowmanager
+abort_with_fallback_wm()
+{
+ if [ "x$SKIP_CHECKS" = "xyes" ]; then
+ verbose "SKIP_CHECKS is yes, so continuing despite problems.\n"
+ return 0;
+ fi
+
+ verbose "aborting and using fallback: $FALLBACKWM \n"
+
+ if [ -x $FALLBACKWM ]; then
+ exec $FALLBACKWM $FALLBACKWM_OPTIONS
+ else
+ printf "no $FALLBACKWM found, exiting\n"
+ exit 1
+ fi
+}
+
+# Check for non power of two texture support
+check_npot_texture()
+{
+ verbose "Checking for non power of two support: "
+ if glxinfo 2> /dev/null | egrep -q '(GL_ARB_texture_non_power_of_two|GL_NV_texture_rectangle|GL_EXT_texture_rectangle|GL_ARB_texture_rectangle)' ; then
+ verbose "present. \n";
+ return 0;
+ else
+ verbose "Not present. \n"
+ return 1;
+ fi
+
+}
+
+# Check for presence of FBConfig
+check_fbconfig()
+{
+ verbose "Checking for FBConfig: "
+ if [ "$INDIRECT" = "yes" ]; then
+ $GLXINFO -i | grep -q GLX.*fbconfig
+ FB=$?
+ else
+ $GLXINFO | grep -q GLX.*fbconfig
+ FB=$?
+ fi
+
+ if [ $FB = "0" ]; then
+ unset FB
+ verbose "present. \n"
+ return 0;
+ else
+ unset FB
+ verbose "not present. \n"
+ return 1;
+ fi
+}
+
+
+# Check for TFP
+check_tfp()
+{
+ verbose "Checking for texture_from_pixmap: "
+ if [ $($GLXINFO 2>/dev/null | grep GLX_EXT_texture_from_pixmap -c) -gt 2 ] ; then
+ verbose "present. \n"
+ return 0;
+ else
+ verbose "not present. \n"
+ if [ "$INDIRECT" = "yes" ]; then
+ unset LIBGL_ALWAYS_INDIRECT
+ INDIRECT="no"
+ return 1;
+ else
+ verbose "Trying again with indirect rendering:\n";
+ INDIRECT="yes"
+ export LIBGL_ALWAYS_INDIRECT=1
+ check_tfp;
+ return $?
+ fi
+ fi
+}
+
+# Check wether the composite extension is present
+check_composite()
+{
+ verbose "Checking for Composite extension: "
+ if xdpyinfo -queryExtensions | grep -q Composite ; then
+ verbose "present. \n";
+ return 0;
+ else
+ verbose "not present. \n";
+ return 1;
+ fi
+}
+
+# Detects if Xgl is running
+check_xgl()
+{
+ verbose "Checking for Xgl: "
+ if xvinfo | grep -q Xgl ; then
+ verbose "present. \n"
+ return 0;
+ else
+ verbose "not present. \n"
+ return 1;
+ fi
+}
+
+# Check if the nVidia card has enough video ram to make sense
+check_nvidia_memory()
+{
+ MEM=$(${NVIDIA_SETTINGS} -q VideoRam | egrep Attribute\ \'VideoRam\'\ .*: | cut -d: -f3 | sed 's/[^0-9]//g')
+ if [ $MEM -lt $NVIDIA_MEMORY ]; then
+ verbose "Less than ${NVIDIA_MEMORY}kb of memory and nVidia";
+ return 1;
+ fi
+ return 0;
+}
+
+# Check for existence if NV-GLX
+check_nvidia()
+{
+ if [ ! -z $NVIDIA_INTERNAL_TEST ]; then
+ return $NVIDIA_INTERNAL_TEST;
+ fi
+ verbose "Checking for nVidia: "
+ if xdpyinfo | grep -q NV-GLX ; then
+ verbose "present. \n"
+ NVIDIA_INTERNAL_TEST=0
+ return 0;
+ else
+ verbose "not present. \n"
+ NVIDIA_INTERNAL_TEST=1
+ return 1;
+ fi
+}
+
+# Check if the max texture size is large enough compared to the resolution
+check_texture_size()
+{
+ TEXTURE_LIMIT=$(glxinfo -l | grep -m1 GL_MAX_TEXTURE_SIZE | sed 's/.*=[^0-9]//g')
+ RESOLUTION=$(xdpyinfo | grep -i dimensions: | sed 's/[^0-9]*pixels.*(.*).*//' | sed 's/[^0-9x]*//')
+ VRES=$(echo $RESOLUTION | sed 's/.*x//')
+ HRES=$(echo $RESOLUTION | sed 's/x.*//')
+ verbose "Comparing resolution ($RESOLUTION) to maximum 3D texture size ($TEXTURE_LIMIT): ";
+ if [ $VRES -gt $TEXTURE_LIMIT ] || [ $HRES -gt $TEXTURE_LIMIT ]; then
+ verbose "Failed.\n"
+ return 1;
+ fi
+ verbose "Passed.\n"
+ return 0
+}
+
+# check driver whitelist
+running_under_whitelisted_driver()
+{
+ LOG=$(xset q|grep "Log file"|awk '{print $3}')
+ if [ "$LOG" = "" ]; then
+ verbose "xset q doesn't reveal the location of the log file. Using fallback $XORG_DEFAULT_LOG \n"
+ LOG=$XORG_DEFAULT_LOG;
+ fi
+ if [ -z "$LOG" ];then
+ verbose "AIEEEEH, no Log file found \n"
+ verbose "$(xset q) \n"
+ return 0
+ fi
+ for DRV in ${WHITELIST}; do
+ if egrep -q "Loading ${XORG_DRIVER_PATH}${DRV}_drv\.so" $LOG &&
+ ! egrep -q "Unloading ${XORG_DRIVER_PATH}${DRV}_drv\.so" $LOG;
+ then
+ return 0
+ fi
+ done
+ verbose "No whitelisted driver found\n"
+ return 1
+}
+
+# check pciid blacklist
+have_blacklisted_pciid()
+{
+ OUTPUT=$(lspci -n)
+ for ID in ${BLACKLIST_PCIIDS}; do
+ if echo "$OUTPUT" | egrep -q "$ID"; then
+ verbose "Blacklisted PCIID '$ID' found \n"
+ return 0
+ fi
+ done
+ OUTPUT=$(lspci -vn | grep -i VGA)
+ verbose "Detected PCI ID for VGA: $OUTPUT\n"
+ return 1
+}
+
+build_env()
+{
+ if check_nvidia; then
+ ENV="__GL_YIELD=NOTHING "
+ fi
+ if [ "$INDIRECT" = "yes" ]; then
+ ENV="$ENV LIBGL_ALWAYS_INDIRECT=1 "
+ fi
+ if check_xgl; then
+ if [ -f ${LIBGL_NVIDIA} ]; then
+ ENV="$ENV LD_PRELOAD=${LIBGL_NVIDIA}"
+ verbose "Enabling Xgl with nVidia drivers...\n"
+ fi
+ if [ -f ${LIBGL_FGLRX} ]; then
+ ENV="$ENV LD_PRELOAD=${LIBGL_FGLRX}"
+ verbose "Enabling Xgl with fglrx ATi drivers...\n"
+ fi
+ fi
+
+ ENV="$ENV FROM_WRAPPER=yes"
+
+ if [ -n "$ENV" ]; then
+ export $ENV
+ fi
+}
+
+build_args()
+{
+ if [ $INDIRECT = "yes" ]; then
+ COMPIZ_OPTIONS="$COMPIZ_OPTIONS --indirect-rendering "
+ fi
+ if check_nvidia; then
+ COMPIZ_OPTIONS="$COMPIZ_OPTIONS --loose-binding"
+ fi
+}
+
+####################
+# Execution begins here.
+
+# Read configuration from XDG paths
+if [ -z "$XDG_CONFIG_DIRS" ]; then
+ test -f /etc/xdg/compiz/compiz-manager && . /etc/xdg/compiz/compiz-manager
+else
+ test -f $XDG_CONFIG_DIRS/compiz/compiz-manager && . $XDG_CONFIG_DIRS/compiz/compiz-manager
+fi
+
+if [ -z "$XDG_CONFIG_HOME" ]; then
+ test -f $HOME/.config/compiz/compiz-manager && . $HOME/.config/compiz/compiz-manager
+else
+ test -f $XDG_CONFIG_HOME/compiz/compiz-manager && . $XDG_CONFIG_HOME/compiz/compiz-manager
+fi
+
+# Don't use compiz when running the failsafe session
+if [ "x$GNOME_DESKTOP_SESSION_ID" = "xFailsafe" ]; then
+ abort_with_fallback_wm
+fi
+
+if [ "x$LIBGL_ALWAYS_INDIRECT" = "x1" ]; then
+ INDIRECT="yes";
+fi
+
+# if we run under Xgl, we can skip some tests here
+if ! check_xgl; then
+ # if vesa or vga are in use, do not even try glxinfo (LP#119341)
+ if ! running_under_whitelisted_driver || have_blacklisted_pciid; then
+ abort_with_fallback_wm
+ fi
+ # check if we have the required bits to run compiz and if not,
+ # fallback
+ if ! check_tfp || ! check_npot_texture || ! check_composite || ! check_texture_size; then
+ abort_with_fallback_wm
+ fi
+
+ if check_nvidia && ! check_nvidia_memory; then
+ abort_with_fallback_wm
+ fi
+
+ if ! check_fbconfig; then
+ abort_with_fallback_wm
+ fi
+fi
+
+# load the ccp plugin if present and fallback to plain gconf if not
+if [ -f ${PLUGIN_PATH}libccp.so ]; then
+ COMPIZ_PLUGINS="$COMPIZ_PLUGINS ccp"
+elif [ -f ${PLUGIN_PATH}libgconf.so ]; then
+ COMPIZ_PLUGINS="$COMPIZ_PLUGINS glib gconf"
+fi
+
+# get environment
+build_env
+build_args
+
+# start the gtk-window-decorator if present
+if [ -x ${COMPIZ_BIN_PATH}emerald ] && [ "$USE_EMERALD" = "yes" ]; then
+ verbose "Starting emerald\n"
+ ${COMPIZ_BIN_PATH}emerald --replace &
+elif [ -x ${COMPIZ_BIN_PATH}gtk-window-decorator ] && [ -n "$GNOME_DESKTOP_SESSION_ID" ]; then
+ verbose "Starting gtk-window-decorator\n"
+ ${COMPIZ_BIN_PATH}gtk-window-decorator --replace &
+elif [ -x ${COMPIZ_BIN_PATH}kde-window-decorator ] && [ -n "$KDE_FULL_SESSION" ]; then
+ verbose "Starting kde-window-decorator\n"
+ ${COMPIZ_BIN_PATH}kde-window-decorator --replace &
+ FALLBACKWM="${KWIN}"
+fi
+
+${COMPIZ_BIN_PATH}${COMPIZ_NAME} $COMPIZ_OPTIONS "$@" $COMPIZ_PLUGINS || exec $FALLBACKWM $FALLBACKWM_OPTIONS
+
diff --git a/x11-wm/compiz/files/compiz-no-gconf.patch b/x11-wm/compiz/files/compiz-no-gconf.patch
new file mode 100644
index 000000000000..d43e84de6815
--- /dev/null
+++ b/x11-wm/compiz/files/compiz-no-gconf.patch
@@ -0,0 +1,20 @@
+ configure.ac | 4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 7b09153..9c22ea0 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -192,10 +192,10 @@ if test "x$use_gconf" = "xyes"; then
+ if test x"$GCONFTOOL" = xno; then
+ AC_MSG_ERROR([gconftool-2 executable not found in your path - should be installed with GConf])
+ fi
++else
++ AM_CONDITIONAL(GCONF_SCHEMAS_INSTALL, test "x$use_gconf" = "xyes")
+ fi
+
+-AM_GCONF_SOURCE_2
+-
+ AM_CONDITIONAL(USE_GCONF, test "x$use_gconf" = "xyes")
+ if test "$use_gconf" = yes; then
+ AC_DEFINE(USE_GCONF, 1, [Build gconf plugin])
diff --git a/x11-wm/compiz/files/compiz.desktop b/x11-wm/compiz/files/compiz.desktop
new file mode 100644
index 000000000000..22cf642b2360
--- /dev/null
+++ b/x11-wm/compiz/files/compiz.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=Compiz
+Name[en_GB]=Compiz
+Exec=compiz ccp
+NoDisplay=true
+# name we put on the WM spec check window
+X-GNOME-WMName=Compiz
+X-GNOME-Autostart-Phase=WindowManager
+X-GNOME-Provides=windowmanager
+X-GNOME-Autostart-Notify=true
diff --git a/x11-wm/compiz/metadata.xml b/x11-wm/compiz/metadata.xml
new file mode 100644
index 000000000000..bf856f7d43b5
--- /dev/null
+++ b/x11-wm/compiz/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <use>
+ <flag name="fuse">
+ Enables support for the filesystem in userspace plugin through <pkg>sys-fs/fuse</pkg>.
+ </flag>
+ <flag name="gconf">
+ Enable the GConf-based configuration backend; it is not required
+ to work with GNOME, and might actually be faster if it's not
+ used.
+ </flag>
+ </use>
+ <herd>desktop-effects</herd>
+ <longdescription>
+ compiz is a compositing window manager that uses 3D graphics acceleration via OpenGL.
+ </longdescription>
+</pkgmetadata>
diff --git a/x11-wm/ctwm/Manifest b/x11-wm/ctwm/Manifest
new file mode 100644
index 000000000000..e8d23b031064
--- /dev/null
+++ b/x11-wm/ctwm/Manifest
@@ -0,0 +1,3 @@
+DIST ctwm-3.7.tar.gz 1139461 SHA256 fa16dbaef6992cdbcdbe05a9dc12c2c16910f5e51a2df54607aeb74f9b4a5171
+DIST ctwm-3.8.2.tar.xz 549984 SHA256 574d67a8a69f2f1ebaa71aa40cc50667e814f74b51f5db8886e2def6a3e0900f SHA512 4633b7bf7b8528ecfd2a753f443fd5286fd394df37ebe885138d30a498f0d721076835d135974a2bd11ca9c32ffd288f84788cb0407ae346a29c5f6371dca497 WHIRLPOOL 6416ecff3230e823bf52219ae8538862a6ed8e66506a16111b715431e3dd007e81d4b1ac6b83321ec12ca95926fb7747b1927626458fa51fb3205589c3f07eda
+DIST ctwm-3.8a.tar.gz 738226 SHA256 39322cc6b0d12dc286af0944f9a10d3a099a5f04c5d9c47b75742cdf65dbd4a4
diff --git a/x11-wm/ctwm/ctwm-3.7.ebuild b/x11-wm/ctwm/ctwm-3.7.ebuild
new file mode 100644
index 000000000000..d73737cbbb0f
--- /dev/null
+++ b/x11-wm/ctwm/ctwm-3.7.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="A clean, light window manager"
+HOMEPAGE="http://ctwm.free.lp.se/"
+SRC_URI="http://ctwm.free.lp.se/dist/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND="x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXmu
+ x11-libs/libXpm
+ x11-libs/libXt"
+DEPEND="${RDEPEND}
+ app-text/rman
+ virtual/jpeg
+ x11-misc/imake
+ x11-proto/xextproto
+ x11-proto/xproto"
+
+src_compile() {
+ sed -i -e "s@\(CONFDIR =\).*@\1 /etc/X11/twm@g" Imakefile \
+ || die "sed failed"
+
+ cp Imakefile.local-template Imakefile.local
+
+ xmkmf || die "xmkmf failed"
+ make TWMDIR=/usr/share/${PN} || die "make failed"
+}
+
+src_install() {
+ make BINDIR=/usr/bin \
+ MANPATH=/usr/share/man \
+ TWMDIR=/usr/share/${PN} \
+ DESTDIR="${D}" install || die "make install failed"
+
+ make MANPATH=/usr/share/man \
+ DOCHTMLDIR=/usr/share/doc/${PF}/html \
+ DESTDIR="${D}" install.man || die "make install.man failed"
+
+ echo "#!/bin/sh" > ${T}/ctwm
+ echo "/usr/bin/ctwm" >> ${T}/ctwm
+
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/ctwm
+
+ dodoc CHANGES README* TODO* PROBLEMS
+ dodoc *.ctwmrc*
+}
diff --git a/x11-wm/ctwm/ctwm-3.8.2.ebuild b/x11-wm/ctwm/ctwm-3.8.2.ebuild
new file mode 100644
index 000000000000..88a435c6b712
--- /dev/null
+++ b/x11-wm/ctwm/ctwm-3.8.2.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="A clean, light window manager"
+HOMEPAGE="http://ctwm.org/"
+SRC_URI="${HOMEPAGE}dist/${P}.tar.xz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~x86-fbsd"
+
+RDEPEND="
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXmu
+ x11-libs/libXpm
+ x11-libs/libXt
+"
+DEPEND="
+ ${RDEPEND}
+ app-arch/xz-utils
+ app-text/rman
+ virtual/jpeg
+ x11-misc/imake
+ x11-proto/xextproto
+ x11-proto/xproto
+"
+
+src_prepare() {
+ # overflow bug 338180
+ sed -i menus.c -e "/char modStr/ s/5/6/" || die
+
+ # implicit 'isspace'
+ sed -i parse.c -e "/<stdio.h>/ a#include <ctype.h>" || die
+
+ sed -i Imakefile -e "/^CONFDIR/s@=.*@= /etc/X11/twm@g" || die
+
+ cp Imakefile.local-template Imakefile.local
+
+ # TODO: Add GNOME support
+ sed -i Imakefile.local -e '/^#define GNOME/d' || die
+}
+
+src_configure() {
+ append-cppflags -DXPM -DJPEG
+ xmkmf || die
+}
+
+src_compile() {
+ emake \
+ CC=$(tc-getCC) \
+ CFLAGS="${CFLAGS}" \
+ EXTRA_LDOPTIONS="${LDFLAGS}" \
+ TWMDIR=/usr/share/${PN}
+}
+
+src_install() {
+ emake BINDIR=/usr/bin \
+ MANPATH=/usr/share/man \
+ TWMDIR=/usr/share/${PN} \
+ DESTDIR="${D}" install
+
+ emake MANPATH=/usr/share/man \
+ DOCHTMLDIR=/usr/share/doc/${PF}/html \
+ DESTDIR="${D}" install.man
+
+ echo "#!/bin/sh" > ${T}/ctwm
+ echo "/usr/bin/ctwm" >> ${T}/ctwm
+
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/ctwm
+
+ dodoc CHANGES README* TODO* PROBLEMS
+ dodoc *.ctwmrc*
+}
diff --git a/x11-wm/ctwm/ctwm-3.8a-r1.ebuild b/x11-wm/ctwm/ctwm-3.8a-r1.ebuild
new file mode 100644
index 000000000000..665e0e60aa87
--- /dev/null
+++ b/x11-wm/ctwm/ctwm-3.8a-r1.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="A clean, light window manager"
+HOMEPAGE="http://ctwm.free.lp.se/"
+SRC_URI="http://ctwm.free.lp.se/dist/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND="x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXmu
+ x11-libs/libXpm
+ x11-libs/libXt"
+DEPEND="${RDEPEND}
+ app-text/rman
+ virtual/jpeg
+ x11-misc/imake
+ x11-proto/xextproto
+ x11-proto/xproto"
+
+src_prepare() {
+ sed -e "/char modStr/ s/5/6/" -i menus.c || die #overflow bug 338180
+ sed -e "/<stdio.h>/ a#include <ctype.h>" -i parse.c || die #implicit 'isspace'
+ sed -i Imakefile \
+ -e "s@\(CONFDIR =\).*@\1 /etc/X11/twm@g" \
+ || die
+
+ cp Imakefile.local-template Imakefile.local
+
+ # TODO: Add GNOME support
+ sed -i Imakefile.local \
+ -e '/^#define GNOME/d' \
+ || die
+}
+
+src_compile() {
+ xmkmf || die
+ emake \
+ CC=$(tc-getCC) \
+ CFLAGS="${CFLAGS}" \
+ EXTRA_LDOPTIONS="${LDFLAGS}" \
+ TWMDIR=/usr/share/${PN} \
+ || die
+}
+
+src_install() {
+ make BINDIR=/usr/bin \
+ MANPATH=/usr/share/man \
+ TWMDIR=/usr/share/${PN} \
+ DESTDIR="${D}" install || die
+
+ make MANPATH=/usr/share/man \
+ DOCHTMLDIR=/usr/share/doc/${PF}/html \
+ DESTDIR="${D}" install.man || die
+
+ echo "#!/bin/sh" > ${T}/ctwm
+ echo "/usr/bin/ctwm" >> ${T}/ctwm
+
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/ctwm || die
+
+ dodoc CHANGES README* TODO* PROBLEMS || die
+ dodoc *.ctwmrc* || die
+}
diff --git a/x11-wm/ctwm/files/ctwm-3.6-r1-gentoo.diff b/x11-wm/ctwm/files/ctwm-3.6-r1-gentoo.diff
new file mode 100644
index 000000000000..d6f9e5cee3dd
--- /dev/null
+++ b/x11-wm/ctwm/files/ctwm-3.6-r1-gentoo.diff
@@ -0,0 +1,55 @@
+diff -urN ctwm-3.6.ORIG/gram.y ctwm-3.6/gram.y
+--- ctwm-3.6.ORIG/gram.y 2001-12-12 00:38:52.000000000 +0900
++++ ctwm-3.6/gram.y 2004-02-07 06:43:37.067787401 +0900
+@@ -419,14 +419,13 @@
+ | WINDOW_RING { list = &Scr->WindowRingL; }
+ win_list
+ | WINDOW_RING { Scr->WindowRingAll = TRUE; }
+- ;
+ | WINDOW_RING_EXCLUDE { if (!Scr->WindowRingL)
+ Scr->WindowRingAll = TRUE;
+ list = &Scr->WindowRingExcludeL; }
+ win_list
+-
+ | WINDOW_GEOMETRIES { }
+ wingeom_list
++ ;
+
+ noarg : KEYWORD { if (!do_single_keyword ($1)) {
+ twmrc_error_prefix();
+@@ -683,8 +682,8 @@
+ | wingeom_entries wingeom_entry
+ ;
+
+-wingeom_entry : string string { AddToList (&Scr->WindowGeometries, $1, $2) }
+-
++wingeom_entry : string string { AddToList (&Scr->WindowGeometries, $1, $2); }
++ ;
+
+
+ squeeze : SQUEEZE_TITLE {
+@@ -835,6 +834,7 @@
+ AddToClientsList ($1, client);
+ }
+
++ ;
+ occupy_window_list : LB occupy_window_entries RB {}
+ ;
+
+@@ -845,7 +845,7 @@
+ occupy_window_entry : string {
+ AddToClientsList (workspace, $1);
+ }
+-
++ ;
+ icon_list : LB icon_entries RB {}
+ ;
+
+@@ -962,6 +962,7 @@
+ RemoveDQuote(ptr);
+ $$ = (unsigned char*)ptr;
+ }
++ ;
+ number : NUMBER { $$ = $1; }
+ ;
+
diff --git a/x11-wm/ctwm/metadata.xml b/x11-wm/ctwm/metadata.xml
new file mode 100644
index 000000000000..4538a68724a6
--- /dev/null
+++ b/x11-wm/ctwm/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>maintainer-needed@gentoo.org</email></maintainer>
+</pkgmetadata>
diff --git a/x11-wm/cwm/Manifest b/x11-wm/cwm/Manifest
new file mode 100644
index 000000000000..b987abef9add
--- /dev/null
+++ b/x11-wm/cwm/Manifest
@@ -0,0 +1,7 @@
+DIST cwm-5.1.tar.gz 44095 SHA256 ea72081e6eafaccf6dd282524f5ce9ed2f4e6f8edc34d5aa88c941e8f398c571 SHA512 6bacd3b76aac4773c77e7216714d64f64f5b810904fb68ea62528e13a7326689ce0320b876086c044eac1cd0e24b71c541843c4c679af1184b93d9a9fe041eda WHIRLPOOL 0cb43dadc0aea17fa42168aae7b0a5bd28bab9d1587c2681a95a30ecff472627bc5d2a96a6fe7201e89c79a70b9ef729578dfbef394afcb69441bfa38d4d65df
+DIST cwm-5.1_p20130728-chneukirchen.tar.gz 49518 SHA256 40f2d099947368946d5cb8f5ee0d2ba5696cb2a69acab5c054a4b51e4644e21e SHA512 1ee05628f8c91113f648d842cb6f5b69f3b5d5da246f1ace7615658e5c0a14fee4cd4da0e0b9e95c245cec250476ea53f6e789bc904dfebef0ef26d05d1e9eba WHIRLPOOL 5ec8fb496bc73afd5b66b0db5f427348f1d9dc8f271af419e43d310c7233f7bd5c4fbbc6ce4fb378a36e6f879d7107487961d95636ec11690006203d72e5f7a2
+DIST cwm-5.1_p20130728-xmw.tar.gz 50890 SHA256 1a9369995e9d3cd9b86360dcbb6f33b00e80617b8e9c88739462b6e80f5aa84a SHA512 9d7fac1ec8c47db2e6fd0b2ceb6649b257c9291e53b4906616e2deeaea98129aa1398fc7bc28a6bfe47d98584423ffef42a26ad8ec7f4d64587f5a04ee65f1a3 WHIRLPOOL 250ad503e502bf8329267cd92e94242642e682808de1c3e03c8f169abb88082f2b8cd79a87c477b2670084443ac3b4851ab1c4967c01775b3f9adcbdcee85a3c
+DIST cwm-5.5-chneukirchen.tar.gz 50709 SHA256 99aa337f15b07e36ba3b03593c56f65b76f8bbef6f73daca73846f6b002f2187 SHA512 97eea54f785f0230b41454f0f9cafa23297410911d8de42bced685cb2751fe180d4a85e57ed77ba4d2ba1e579c6bdf827a8f0f17665f97d34e579600a9abbf54 WHIRLPOOL 07cb50b87a22604f052a8cee75cecb1ff29c18659fab5ed144a6300817b98e6ef039ff8729fc79290a60d8a69103fe93d4a57c5c9c2c5e5996336d1aa78e1b02
+DIST cwm-5.5-xmw.tar.gz 53515 SHA256 81544b907ada85f2dbc7dddf7f55e7549b2047d857726c3f6a75e0e160453695 SHA512 7496e43d7a12aa3aeba2321fc447a1caf2eb9c796c697c13eceb3180b30d3afec8af770a0c31d26d5a89dc723d5bb7eb465523836bab09754c3dc7554623dbdf WHIRLPOOL 663c50c927c2fc63cc53d0beacffd5678d921fb1e6b432ffad988a3552ce1027b6f24a28e2cfb7c2b16c7e880ed61495a816cec480726f00db1f9b267278db94
+DIST cwm-5.6-chneukirchen.tar.gz 50799 SHA256 006320bb1716cc0f93bac5634dcccd01f21d468263b5fc9d1be2dd11078a0625 SHA512 0bb5f9c69e1ed30ef38ced70008baa347032a0c31ee2d4a88e3b45092969a5427ef160577da4891aba3181067235b244f11fc796815f41448930b438099b5bfc WHIRLPOOL bc1a0d5319e287a21415022c288af8977ff135af0f75f8a0d2b15db837ffd4a0cb94e8e031add366b2ad7852b4b6fb0b514e69cc85d9b842b469e0e69e627645
+DIST cwm-5.6-xmw.tar.gz 53738 SHA256 64d6974b2c3076f69d07bb38058a7e7ddc8a0e0016b191fc9a3bef469f617934 SHA512 cf0174523838dba5997206be904ab667efc5ff7e413e98bb81cc3a69d40a79b54e21405787e088486feb8790d1094a2d3cce0be08d7ee36a2b9b0dadd78466c7 WHIRLPOOL 40b7c8aeb665fdc8393d69eb8dcec220d6ac9b53e4491894f69e31493d5ba136c37d43553b199662b57d603fe71420fd24bb9ddf9240ecc50e6f8d9d3e7f89ab
diff --git a/x11-wm/cwm/cwm-5.1.ebuild b/x11-wm/cwm/cwm-5.1.ebuild
new file mode 100644
index 000000000000..ef17e986d3c5
--- /dev/null
+++ b/x11-wm/cwm/cwm-5.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="OpenBSD fork of calmwm, a clean and lightweight window manager"
+HOMEPAGE="http://www.openbsd.org/cgi-bin/cvsweb/xenocara/app/cwm/
+ http://github.com/chneukirchen/cwm"
+SRC_URI="http://chneukirchen.org/releases/${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="amd64 arm x86"
+IUSE=""
+
+RDEPEND="x11-libs/libXft
+ x11-libs/libXinerama
+ x11-libs/libXrandr"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ sys-devel/bison"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-4.2_p20111229-Makefile.patch
+ tc-export CC
+}
+
+src_install() {
+ emake DESTDIR="${D}" PREFIX=/usr install
+ dodoc README
+ make_session_desktop ${PN} ${PN}
+}
diff --git a/x11-wm/cwm/cwm-5.1_p20130728.ebuild b/x11-wm/cwm/cwm-5.1_p20130728.ebuild
new file mode 100644
index 000000000000..a7554440204c
--- /dev/null
+++ b/x11-wm/cwm/cwm-5.1_p20130728.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="OpenBSD fork of calmwm, a clean and lightweight window manager"
+HOMEPAGE="http://www.openbsd.org/cgi-bin/cvsweb/xenocara/app/cwm/
+ http://github.com/chneukirchen/cwm"
+SRC_URI="vanilla? ( https://github.com/chneukirchen/cwm/tarball/0dec9e8 -> ${P}-chneukirchen.tar.gz )
+ !vanilla? ( https://github.com/xmw/cwm/tarball/b8be675 -> ${P}-xmw.tar.gz )"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="vanilla"
+
+RDEPEND="x11-libs/libXft
+ x11-libs/libXinerama
+ x11-libs/libXrandr"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ sys-devel/bison"
+
+src_unpack() {
+ default
+ # vcs-snapshot doesn't work with tarball names
+ mv *-${PN}-* ${P} || die
+}
+
+src_compile() {
+ emake CFLAGS="${CFLAGS} -D_GNU_SOURCE" CC="$(tc-getCC)"
+}
+
+src_install() {
+ emake DESTDIR="${D}" PREFIX=/usr install
+ dodoc README
+ make_session_desktop ${PN} ${PN}
+}
diff --git a/x11-wm/cwm/cwm-5.5.ebuild b/x11-wm/cwm/cwm-5.5.ebuild
new file mode 100644
index 000000000000..89363c9bb571
--- /dev/null
+++ b/x11-wm/cwm/cwm-5.5.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="OpenBSD fork of calmwm, a clean and lightweight window manager"
+HOMEPAGE="http://www.openbsd.org/cgi-bin/cvsweb/xenocara/app/cwm/
+ http://github.com/chneukirchen/cwm"
+SRC_URI="vanilla? ( http://chneukirchen.org/releases/${P}.tar.gz -> ${P}-chneukirchen.tar.gz )
+ !vanilla? ( https://github.com/xmw/cwm/tarball/67cc266 -> ${P}-xmw.tar.gz )"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="vanilla"
+
+RDEPEND="x11-libs/libXft
+ x11-libs/libXinerama
+ x11-libs/libXrandr"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ sys-devel/bison"
+
+src_unpack() {
+ default
+ # vcs-snapshot doesn't work with tarball names
+ if ! use vanilla ; then
+ mv *${PN}-* ${P} || die
+ fi
+}
+
+src_compile() {
+ emake CFLAGS="${CFLAGS} -D_GNU_SOURCE" CC="$(tc-getCC)"
+}
+
+src_install() {
+ emake DESTDIR="${D}" PREFIX=/usr install
+ dodoc README
+ make_session_desktop ${PN} ${PN}
+}
diff --git a/x11-wm/cwm/cwm-5.6.ebuild b/x11-wm/cwm/cwm-5.6.ebuild
new file mode 100644
index 000000000000..8fefc87be2af
--- /dev/null
+++ b/x11-wm/cwm/cwm-5.6.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="OpenBSD fork of calmwm, a clean and lightweight window manager"
+HOMEPAGE="http://www.openbsd.org/cgi-bin/cvsweb/xenocara/app/cwm/
+ http://github.com/chneukirchen/cwm"
+SRC_URI="vanilla? ( http://chneukirchen.org/releases/${P}.tar.gz -> ${P}-chneukirchen.tar.gz )
+ !vanilla? ( https://github.com/xmw/cwm/tarball/ea9a436 -> ${P}-xmw.tar.gz )"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="vanilla"
+
+RDEPEND="x11-libs/libXft
+ x11-libs/libXinerama
+ x11-libs/libXrandr"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ sys-devel/bison"
+
+src_unpack() {
+ default
+ # vcs-snapshot doesn't work with tarball names
+ if ! use vanilla ; then
+ mv *${PN}-* ${P} || die
+ fi
+}
+
+src_compile() {
+ emake CFLAGS="${CFLAGS} -D_GNU_SOURCE" CC="$(tc-getCC)"
+}
+
+src_install() {
+ emake DESTDIR="${D}" PREFIX=/usr install
+ dodoc README
+ make_session_desktop ${PN} ${PN}
+}
diff --git a/x11-wm/cwm/cwm-9999.ebuild b/x11-wm/cwm/cwm-9999.ebuild
new file mode 100644
index 000000000000..21b960b1c98e
--- /dev/null
+++ b/x11-wm/cwm/cwm-9999.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs git-2
+
+DESCRIPTION="OpenBSD fork of calmwm, a clean and lightweight window manager"
+HOMEPAGE="http://www.openbsd.org/cgi-bin/cvsweb/xenocara/app/cwm/
+ http://github.com/chneukirchen/cwm"
+EGIT_BRANCH=linux
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS=""
+IUSE="vanilla"
+
+RDEPEND="x11-libs/libXft
+ x11-libs/libXinerama
+ x11-libs/libXrandr"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ sys-devel/bison"
+
+pkg_setup() {
+ if use vanilla ; then
+ EGIT_REPO_URI="https://github.com/chneukirchen/cwm.git"
+ else
+ EGIT_REPO_URI="https://github.com/xmw/cwm.git"
+ fi
+}
+
+src_compile() {
+ emake CFLAGS="${CFLAGS} -D_GNU_SOURCE" CC="$(tc-getCC)"
+}
+
+src_install() {
+ emake DESTDIR="${D}" PREFIX=/usr install
+ dodoc README
+ make_session_desktop ${PN} ${PN}
+}
diff --git a/x11-wm/cwm/files/cwm-4.2_p20111229-Makefile.patch b/x11-wm/cwm/files/cwm-4.2_p20111229-Makefile.patch
new file mode 100644
index 000000000000..bb00c017112a
--- /dev/null
+++ b/x11-wm/cwm/files/cwm-4.2_p20111229-Makefile.patch
@@ -0,0 +1,11 @@
+--- cwm-20111229/Makefile
++++ cwm-20111229/Makefile
+@@ -16,7 +16,7 @@
+
+ CPPFLAGS+= `pkg-config --cflags fontconfig x11 xft xinerama xrandr`
+
+-CFLAGS= -Wall -O2 -g
++CFLAGS?= -Wall -O2 -g
+
+ LDFLAGS+= `pkg-config --libs fontconfig x11 xft xinerama xrandr`
+
diff --git a/x11-wm/cwm/metadata.xml b/x11-wm/cwm/metadata.xml
new file mode 100644
index 000000000000..77896dc9461b
--- /dev/null
+++ b/x11-wm/cwm/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>xmw@gentoo.org</email>
+ <name>Michael Weber</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">chneukirchen/cwm</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/x11-wm/dwm/Manifest b/x11-wm/dwm/Manifest
new file mode 100644
index 000000000000..228e2786dfe7
--- /dev/null
+++ b/x11-wm/dwm/Manifest
@@ -0,0 +1 @@
+DIST dwm-6.0.tar.gz 20810 SHA256 b2b9483de69259eeea56844899bb2385158d3e79a42d82b10c142099fc8eeb56 SHA512 895d1d363b3756c9ba19dbf06af34be753c1ae5971d540113d7f8901ad174c2e5944ef769b43e65f7b700f34832bb24082bc91d999b287610c9925182ce70c00 WHIRLPOOL bac35d2cb41df313bda2dfd2ca5b12467ec22e41c1640d8d65e67f1e7231baffc96151de03e18d8823918ddd2bdf905a6e0d984592da5cd525e87fb638f0b3dd
diff --git a/x11-wm/dwm/dwm-6.0.ebuild b/x11-wm/dwm/dwm-6.0.ebuild
new file mode 100644
index 000000000000..a5f1dcd0436e
--- /dev/null
+++ b/x11-wm/dwm/dwm-6.0.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils savedconfig toolchain-funcs
+
+DESCRIPTION="a dynamic window manager for X11"
+HOMEPAGE="http://dwm.suckless.org/"
+SRC_URI="http://dl.suckless.org/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ppc ppc64 x86 ~x86-fbsd"
+IUSE="xinerama"
+
+RDEPEND="
+ x11-libs/libX11
+ xinerama? ( x11-libs/libXinerama )
+"
+DEPEND="
+ ${RDEPEND}
+ xinerama? ( x11-proto/xineramaproto )
+"
+
+src_prepare() {
+ sed -i \
+ -e "s/CFLAGS = -std=c99 -pedantic -Wall -Os/CFLAGS += -std=c99 -pedantic -Wall/" \
+ -e "/^LDFLAGS/{s|=|+=|g;s|-s ||g}" \
+ -e "s/#XINERAMALIBS =/XINERAMALIBS ?=/" \
+ -e "s/#XINERAMAFLAGS =/XINERAMAFLAGS ?=/" \
+ -e "s@/usr/X11R6/include@${EPREFIX}/usr/include/X11@" \
+ -e "s@/usr/X11R6/lib@${EPREFIX}/usr/lib@" \
+ -e "s@-I/usr/include@@" -e "s@-L/usr/lib@@" \
+ config.mk || die
+ sed -i \
+ -e '/@echo CC/d' \
+ -e 's|@${CC}|$(CC)|g' \
+ Makefile || die
+
+ restore_config config.h
+ epatch_user
+}
+
+src_compile() {
+ if use xinerama; then
+ emake CC=$(tc-getCC) dwm
+ else
+ emake CC=$(tc-getCC) XINERAMAFLAGS="" XINERAMALIBS="" dwm
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" install
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/dwm-session2 dwm
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/dwm.desktop
+
+ dodoc README
+
+ save_config config.h
+}
+
+pkg_postinst() {
+ einfo "This ebuild has support for user defined configs"
+ einfo "Please read this ebuild for more details and re-emerge as needed"
+ einfo "if you want to add or remove functionality for ${PN}"
+ if ! has_version x11-misc/dmenu; then
+ elog "Installing ${PN} without x11-misc/dmenu"
+ einfo "To have a menu you can install x11-misc/dmenu"
+ fi
+ einfo "You can custom status bar with a script in HOME/.dwm/dwmrc"
+ einfo "the ouput is redirected to the standard input of dwm"
+ einfo "Since dwm-5.4, status info in the bar must be set like this:"
+ einfo "xsetroot -name \"\`date\` \`uptime | sed 's/.*,//'\`\""
+}
diff --git a/x11-wm/dwm/files/dwm-session2 b/x11-wm/dwm/files/dwm-session2
new file mode 100644
index 000000000000..f886ce9465f5
--- /dev/null
+++ b/x11-wm/dwm/files/dwm-session2
@@ -0,0 +1,11 @@
+#!/bin/sh
+DIR=${HOME}/.dwm
+if [ -f "${DIR}"/dwmrc ]; then
+ /bin/sh "${DIR}"/dwmrc &
+else
+ while true; do
+ xsetroot -name "`date`"
+ sleep 1
+ done &
+fi
+exec /usr/bin/dwm
diff --git a/x11-wm/dwm/files/dwm.desktop b/x11-wm/dwm/files/dwm.desktop
new file mode 100644
index 000000000000..c31a41297eee
--- /dev/null
+++ b/x11-wm/dwm/files/dwm.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=dwm
+Comment=dynamic window manager
+Exec=/etc/X11/Sessions/dwm
+TryExec=dwm
+Icon=
+Type=Application
diff --git a/x11-wm/dwm/metadata.xml b/x11-wm/dwm/metadata.xml
new file mode 100644
index 000000000000..b6af2b7ba15c
--- /dev/null
+++ b/x11-wm/dwm/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>proxy-maintainers</herd>
+<maintainer>
+ <email>michael.stahn.42@gmail.com</email>
+ <name>Michael Stahn</name>
+ <description>Maintainer. Assign bugs to him</description>
+</maintainer>
+<longdescription>dwm is a dynamic window manager for X. It manages windows in tiling and floating modes. Either mode can be applied dynamically, optimizing the environment for the application in use and the task performed.</longdescription>
+</pkgmetadata>
diff --git a/x11-wm/echinus/Manifest b/x11-wm/echinus/Manifest
new file mode 100644
index 000000000000..6dd02c92025a
--- /dev/null
+++ b/x11-wm/echinus/Manifest
@@ -0,0 +1 @@
+DIST echinus-0.4.9.tar.gz 32934 SHA256 c57ac8f72845bea02bed0c27256b4023668ae7b41ae3c461d6e9b63e24914d94
diff --git a/x11-wm/echinus/echinus-0.4.9.ebuild b/x11-wm/echinus/echinus-0.4.9.ebuild
new file mode 100644
index 000000000000..32696f577ae6
--- /dev/null
+++ b/x11-wm/echinus/echinus-0.4.9.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils toolchain-funcs multilib
+
+DESCRIPTION="A window manager for X in the spirit of dwm"
+HOMEPAGE="http://plhk.ru/echinus"
+SRC_URI="http://plhk.ru/static/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="xrandr"
+
+RDEPEND="x11-libs/libX11
+ x11-libs/libXft
+ xrandr? ( x11-libs/libXrandr )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+DOCS=( README )
+
+pkg_setup() {
+ tc-export CC
+ use xrandr && export MULTIHEAD=1
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gentoo.diff
+ sed -i -e "s|CONFDIR|/usr/share/${PN}|g" echinus.1 README || die
+ sed -i -e "s|/usr/lib|/usr/$(get_libdir)|g" config.mk || die
+}
+
+src_install() {
+ dobin ${PN}
+ doman ${PN}.1
+ dodoc README
+ insinto /usr/share/${PN}
+ doins {close,iconify,max}.xbm ${PN}rc
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/${PN}.desktop
+}
+
+pkg_postinst() {
+ if ! has_version x11-misc/dmenu; then
+ elog "Installing ${PN} without x11-misc/dmenu"
+ elog "To have a menu you can install x11-misc/dmenu"
+ elog "and use \"Echinus*spawn\" in echinusrc"
+ elog "to launch dmenu_run. Check echinus documentation for details."
+ elog ""
+ fi
+ elog "A standard config file with its pixmaps has been installed to:"
+ elog "${EPREFIX}/usr/share/${PN}/examples"
+ elog "Copy this folder to ~/.${PN}/ and modify the echinusrc as you wish."
+ elog ""
+ elog "For changing the modkey you can use \"Echinus*modkey: X\""
+ elog "in echinusrc. Replace the X with A for ALT, W for Winkey (Super),"
+ elog "S for Shift or C for the Control key."
+}
diff --git a/x11-wm/echinus/files/echinus-0.4.9-gentoo.diff b/x11-wm/echinus/files/echinus-0.4.9-gentoo.diff
new file mode 100644
index 000000000000..75b8b48c121a
--- /dev/null
+++ b/x11-wm/echinus/files/echinus-0.4.9-gentoo.diff
@@ -0,0 +1,68 @@
+--- a/config.mk
++++ b/config.mk
+@@ -4,10 +4,10 @@
+ # Customize below to fit your system
+
+ # paths
+-PREFIX?= /usr/local
++PREFIX?= /usr
+ BINPREFIX?= ${PREFIX}/bin
+ MANPREFIX?= ${PREFIX}/share/man
+-CONFPREFIX?= ${PREFIX}/share/examples
++CONFPREFIX?= ${PREFIX}/share/echinus
+ DOCPREFIX?= ${PREFIX}/share/doc
+ CONF?= ${CONFPREFIX}
+
+@@ -15,14 +15,13 @@
+ X11LIB?= /usr/X11R6/lib
+
+ # includes and libs
+-INCS = -I. -I/usr/include -I${X11INC} `pkg-config --cflags xft`
+-LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 `pkg-config --libs xft`
+-
+-DEFS = -DVERSION=\"${VERSION}\" -DSYSCONFPATH=\"${CONF}\"
++CFLAGS += -I. -I/usr/include `pkg-config --cflags x11 xft`
++LIBS += -L/usr/lib -lc `pkg-config --libs x11 xft`
++CPPFLAGS += -DVERSION=\"${VERSION}\" -DSYSCONFPATH=\"${CONF}\"
+
+ # flags
+-CFLAGS = -Os ${INCS} ${DEFS}
+-LDFLAGS = -s ${LIBS}
++#CFLAGS = -Os ${INCS} ${DEFS}
++#LDFLAGS = -s ${LIBS}
+ # debug flags
+ #CFLAGS = -g3 -ggdb3 -std=c99 -pedantic -O0 ${INCS} -DDEBUG ${DEFS}
+ #LDFLAGS = -g3 -ggdb3 ${LIBS}
+@@ -35,9 +34,11 @@
+ #CFLAGS += -save-temps # Keep precompiler output (great for debugging).
+
+ # XRandr (multihead support). Comment out to disable.
+-CFLAGS += -DXRANDR=1
+-LIBS += -lXrandr
+-
++ifdef MULTIHEAD
++CPPFLAGS += -DXRANDR=1
++LIBS += `pkg-config --libs xrandr`
++CCFLAGS += `pkg-config --libs xrandr`
++endif
+ # Solaris
+ #CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"
+ #LDFLAGS = ${LIBS}
+--- a/Makefile
++++ b/Makefile
+@@ -19,13 +19,13 @@
+
+ .c.o:
+ @echo CC $<
+- @${CC} -c ${CFLAGS} $<
++ ${CC} ${CPPFLAGS} -c ${CFLAGS} $<
+
+ ${OBJ}: config.mk ${HEADERS}
+
+ echinus: ${OBJ} ${SRC} ${HEADERS}
+ @echo CC -o $@
+- @${CC} -o $@ ${OBJ} ${LDFLAGS}
++ ${CC} ${CFLAGS} ${LDFLAGS} -o $@ ${OBJ} ${LIBS}
+
+ clean:
+ @echo cleaning
diff --git a/x11-wm/echinus/files/echinus.desktop b/x11-wm/echinus/files/echinus.desktop
new file mode 100644
index 000000000000..7a13be918bf9
--- /dev/null
+++ b/x11-wm/echinus/files/echinus.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=echinus
+Comment=echinus wm
+Exec=echinus
+TryExec=echinus
+Icon=
+Type=Application
diff --git a/x11-wm/echinus/metadata.xml b/x11-wm/echinus/metadata.xml
new file mode 100644
index 000000000000..bc2c871aba13
--- /dev/null
+++ b/x11-wm/echinus/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>nico@lifeisabug.com</email>
+ <name>Nico R. Wohlgemuth</name>
+ </maintainer>
+ <use>
+ <flag name='xrandr'>Enable support for multihead configuration</flag>
+ </use>
+</pkgmetadata>
diff --git a/x11-wm/emerald/Manifest b/x11-wm/emerald/Manifest
new file mode 100644
index 000000000000..5fd731161280
--- /dev/null
+++ b/x11-wm/emerald/Manifest
@@ -0,0 +1 @@
+DIST emerald-0.8.8.tar.bz2 528715 SHA256 239285ced20e817f5303e935d922236f828ca905b264833005a330df2089e8a3 SHA512 c19300ed03b168a01d3c8b7fd90e9f594d5a8165b04d5228de2294301f31619f1126e9ce618e49d666e5b5609eb52ea1434f165f67dc6843ae17b6664305427e WHIRLPOOL d420c2022c2a98263b8e50c1fd51ce8d80c2dca70d161b7864ba706850d3bbb68ebd3baac111999d7c3c7a058fd9cbc1c67eeebc51eca0067edad4481f65b15c
diff --git a/x11-wm/emerald/emerald-0.8.8.ebuild b/x11-wm/emerald/emerald-0.8.8.ebuild
new file mode 100644
index 000000000000..921726a76801
--- /dev/null
+++ b/x11-wm/emerald/emerald-0.8.8.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils flag-o-matic
+
+THEMES_RELEASE=0.5.2
+
+DESCRIPTION="Emerald Window Decorator"
+HOMEPAGE="http://www.compiz.org/"
+SRC_URI="http://releases.compiz.org/${PV}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+PDEPEND="~x11-themes/emerald-themes-${THEMES_RELEASE}"
+
+RDEPEND="
+ >=x11-libs/gtk+-2.8.0:2
+ >=x11-libs/libwnck-2.14.2:1
+ >=x11-wm/compiz-${PV}
+"
+
+DEPEND="${RDEPEND}
+ >=dev-util/intltool-0.35
+ virtual/pkgconfig
+ >=sys-devel/gettext-0.15
+"
+
+DOCS=( AUTHORS ChangeLog INSTALL NEWS README TODO )
+
+src_prepare() {
+ # Fix pkg-config file pollution wrt #380197
+ epatch "${FILESDIR}"/${P}-pkgconfig-pollution.patch
+ # fix build with gtk+-2.22 - bug 341143
+ sed -i -e '/#define G[DT]K_DISABLE_DEPRECATED/s:^://:' \
+ include/emerald.h || die
+ # Fix underlinking
+ append-libs -ldl -lm
+
+ epatch_user
+}
+
+src_configure() {
+ econf \
+ --disable-static \
+ --enable-fast-install \
+ --disable-mime-update
+}
+
+src_install() {
+ default
+ prune_libtool_files
+}
diff --git a/x11-wm/emerald/files/emerald-0.8.8-pkgconfig-pollution.patch b/x11-wm/emerald/files/emerald-0.8.8-pkgconfig-pollution.patch
new file mode 100644
index 000000000000..047d8dfad786
--- /dev/null
+++ b/x11-wm/emerald/files/emerald-0.8.8-pkgconfig-pollution.patch
@@ -0,0 +1,12 @@
+--- libengine/emeraldengine.pc.in
++++ libengine/emeraldengine.pc.in
+@@ -7,6 +7,7 @@
+ Description: Library for Emerald Engines
+ Version: @VERSION@
+
+-Requires: @EMERALD_REQUIRES@
+-Libs: @EMERALD_LIBS@
++Requires.private: @EMERALD_REQUIRES@
++Libs: -L${libdir} -lemeraldengine
++Libs.private: @EMERALD_LIBS@
+ Cflags: @EMERALD_CFLAGS@ -I${includedir}/emerald
diff --git a/x11-wm/emerald/metadata.xml b/x11-wm/emerald/metadata.xml
new file mode 100644
index 000000000000..13d892cb8836
--- /dev/null
+++ b/x11-wm/emerald/metadata.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>desktop-effects</herd>
+<longdescription lang="en">Emerald is a 3D window decorator for compositing window managers such as compiz.</longdescription>
+</pkgmetadata>
diff --git a/x11-wm/enlightenment/Manifest b/x11-wm/enlightenment/Manifest
new file mode 100644
index 000000000000..e649f55929aa
--- /dev/null
+++ b/x11-wm/enlightenment/Manifest
@@ -0,0 +1,17 @@
+DIST e16-1.0.10.tar.gz 2260313 SHA256 8792bedebded3739803405d0fd45f32343e460e4927bc618670461d1c8cccb9b SHA512 52b7f66f06247f7f0bbe0873e6d36733d02bff34188ec3345511333b967c8b5710bcc335727eb656bfa26b6ead07f549d30258303880dadcd2b465491e9795a4 WHIRLPOOL 0c2d78dc936bd78769b93f8a8dd037819402911ff445a78770c3eea8cb5243268ab3ae867cc3bc603790c69964a4f46d026de9c914b03961a08a65e48fc6add6
+DIST e16-1.0.11.tar.gz 2281672 SHA256 c7bc9fed4a83d2791df2acd6aa9e710cc162f2b54312c834f41940fb60a1f13e SHA512 01a323bbcdbf2ae63179c78423aadd59fe15eed2425abe3b5546c0d2bf9e6458dec0cee75d0704592839d742467d580a018449faab81dfa57ff45aa6d4a56c54 WHIRLPOOL f5b244de3deb17a0b5676057894f1928e3225cd19ee71e382a50184d49a050ea35d288a85f3b80d4abd3bb6c1e0f29cfa6257436c92940d483d8d637eb037dae
+DIST e16-1.0.13.tar.gz 2299510 SHA256 66487942fe6c63050fb7c8fe424f37355a8005ed417355b6e78becd867a12dd2 SHA512 965c853363c15154ca99b71deba3aa1d23bdfee0664b3511b39f52e066ca673a9b042e203e079357c9ca355484006cc4a90d0e0fb29b7396d582f7b9aa302da5 WHIRLPOOL 37118b388e08014ef81038f9e101e4abdf58876a5f468c31926a2f54d51f58154d76abe0080c6a45369a3ab0bb5ddf1c980badcdb1b45002ae63c0dcdb36f072
+DIST e16-1.0.14.tar.gz 2340182 SHA256 45b9a554e366f609764efaed1bf7230e999c3fd7ff5789abf08cccc13dc6d2d2 SHA512 7ac6c6349831c49af54facba55cf804c3a55b2e111e85c714bf186385a8a823b52381b8aff0b19e8d3382c44d44a62a252c951a0398d7d6a774c152c9f9bb33f WHIRLPOOL 478cf0f78a2693a7b5ff926a14bc8750b3d8ed956cc4222ab3ac0baa6d485d35d60b3ec80e98b68e32d6ca6938cd64532640810c8dae127934888069ae0e3982
+DIST e16-1.0.15.tar.gz 2392041 SHA256 ce8e87618c5d0b85882197a92ceee8d4240caacffb525bae7721eb0e0a83a7ea SHA512 bc2a891b172b7201a24629cd52df6817ce03b0d5978e2a75db6abba4c21d8670bd94243d7026bc8f50cefb7562c34266aa8332901dde593d0d44e8b3a5dfd5e8 WHIRLPOOL 59cff86ef7a694a8a23e04ff5609958ded65cccb786f1845866ecb6a8cf0c6e892666b429780f6dba12913411ffb97dd67ae7df2d48a431ddef66af4d2973ffd
+DIST e16-1.0.16.tar.gz 2395638 SHA256 a50ecbcf1cf239a5b36cc592364b2b1ee8e4135098704e5b1b949f989811cff1 SHA512 1cd3e42221546b08a7fa1431ab603d79963d91da86b0ec53d4578b8e02697b6b54db1ee75ae7e948c780905ad059c4be77d72f8bb33d3808e03842d53922eb8e WHIRLPOOL 4e26917992d90e69af1e1574582048e09ee4ef4e461c4f0e05739d80f63647575b548c97f8afc0bf79a97647d632463b22bbf9c431a3977b8e9ef83ea952220a
+DIST e16-1.0.17.tar.gz 2417299 SHA256 41ed67b648acc9b570cc681cf69d0accf38b69fd5d0af6b8ea8a6eacbf87659d SHA512 d6ad565cf638de5240fbcd0f1cd37977c69e6af31a4ff9127e9c570fdf57a56bde50978620fbc34508d02661effa17f0c8b91ca23faebc0b77f9d40e166ba021 WHIRLPOOL d4996798db0ce676c0cdce8bc6a354fcb6649ee4a9c579dc4c51beaeb96d7dcd2dfe0f063ead6724b21bb9f7f66608596412a251df0c2670b944f7376cb3e504
+DIST e16-1.0.2.tar.gz 2108376 SHA256 fbaa1206250d61a5125bc55f5db28e75ab9eb91e409f91f0e1d177070c58512d SHA512 a1a014d168345cd9bd8accc681bea03be6c39db3c54e76d828d40739a773d222fd2f7f1b2165ae9bb5df2022b47c6ddb229ac2980bd2bb806c81e1fb7ed1ebb4 WHIRLPOOL 1b528e95954d1905fc91c9822acb1b55e9a96a31001d71ea7072bbb6982bbc5f57d9f7b7916d7d0e38685efd65c655c0c4fb05466d68bba9ddb4dbf8b14585cd
+DIST e16-1.0.6.tar.gz 2212263 SHA256 6ab09e326420982a3b828538bae3f1ea4a2e45b8d5f71dbb5b83b591d0d70121 SHA512 4f5b0cecd34f69a0908b78277e5222036afee27e9ef73a1bd58c46ae6a3aaf529dc25557a2dc96ee76c8c06da97639c888919f198c47e93c96f4f30d37aae65c WHIRLPOOL 6eb3c3e3da761cb879619a162df6f403b40ecff0eac8ed78170ebd6bde5c06c631524b9e17e02c633d3b267aaad9c7b5da815e0413f7894a28bf9409c10a5eed
+DIST e16-1.0.7.tar.gz 2223518 SHA256 d36cf57e4125b173608a6f4cbfa53d91f59f047579fe6a40939874293cfe71bc SHA512 ce9c6108e2d87fa669f774577ed48b9a35e5e9b52d0703f20563bfd23918a542b3833023fc5f98967cc1a3da864d47de4747bbd228c49e53b6e9dc505c3a6b0b WHIRLPOOL 33e0bd6cf6f36a7b1af60b92dd6fccb4805ea2ac9daa47d54902cfdba6338cb2a170d6f3afd0fa0f5a335e994c7d564e2a2eb1816ed6b32f6f53102a8ed35fc4
+DIST e16-1.0.8.tar.gz 2243485 SHA256 794d842ec30a29e0d6a85a3bd40120151c27419d77d2fd5759b49862063be27f SHA512 f8d8687a40defdbec385ab007351501a2bd5d39addc6d096655ee57b0384e59aa374c9d1860fa81f5405751e706015b920712c9607b04182916d9a5b7bfe22e7 WHIRLPOOL a558555b955951c9ccd039898d6e8b2219ae284f839ca921fe89bfebbf1ae9257826187c65ab81564cb074b1cb17cfd75bddfea7e02492796be6d05be62c237c
+DIST e16-1.0.9.tar.gz 2256543 SHA256 d435840a4a429cb22f241d7889e82827061f6ef5ccd9bbc8720af51dee053d27 SHA512 75dc4c784bb70a22b5baa6462024164a10bcea325aa479d2c856f8d214910f36fba865f78017f5c71847991015e7164ecb3959b9ee6d8e531c1b938bd5f61d2a WHIRLPOOL 1c11956dee0905a5465bbc900c3e5fb5ded702b091d3e1bb93738101a82efda82270e5b1fb530e3980077a53fecdb6136bbc4b9c564136bf82ec475fc851cdbc
+DIST enlightenment-0.17.6.tar.bz2 29500129 SHA256 25ec72b40e7827468a2498fedfb03f86cb6f20101b63175d80c96db3157b0c0e SHA512 5f8fec0b2c9cb2bcc3e2738b68e4266179153288a161e4e2d0f7ff50b702d6d78d836b433105c548997b516324ca7ba44a74a7361052235b50e18c22a26c9dc9 WHIRLPOOL e89b52efa2007815ef4de9272102f5f170a3838666483a4653bdaa2f37291e14e92d6814dcbd7dfdfdcf14735dc37571b6fa1bf6f7b5a8c08070723d75e7d03a
+DIST enlightenment-0.18.7.tar.bz2 27613518 SHA256 90fc71cd7eda1bf4e7cf4fa6ed4d578ce01f5d8c66e21f1d1a2ffbc843f36b13 SHA512 f06479e3c6da31f9457525247f1654ed10e192073f1e9fa9d07f5d8158f6463871960776c320bb5cc3676cdfb3188e4b0c5435c438051a2bfd9f3b2c8f73befd WHIRLPOOL b1b6323b047d330789b079dad45826269d878890b56b763b7a2b4a10dff1adecbeb062ba7cb795ff0f415d06f8da3c5b11a64dfaeb98fb8ac48d77e79b2d1391
+DIST enlightenment-0.18.8.tar.bz2 27616548 SHA256 e99b1d8a9c64dad80611310bd3dc3a7b6d9eaefbd21d0f4a3c350aed9137ca13 SHA512 8ba767b7004c78130eda315a4b7c06d5dcd4034e4d9ef588d0012eca70fb677cff8f9a81bb5a33e6e8891d52f9f93e0f1cf4d3fadec505afd6c1f476b964fe73 WHIRLPOOL edbd586f1c00574457fe2123d1a0c86e00b8c949abf04677535b0d4378bc66822cc72f48138be622a8c671f40f65fe5ce42b6d8af3f96259b15136981f556994
+DIST enlightenment-0.19.4.tar.xz 24597128 SHA256 e777febb2fa751ec3320fdc3e2ecb0a9b70ec75f2d188fb02edd31004e536b64 SHA512 c5f6a68cff1c4744da050e1ac865f8af6a70675d4a50644f91a30e572509c5f5314a43a16a43e9f45d3ddb0a827bd213a1478d6f7416f76e68928560a3e32b6f WHIRLPOOL 8e37c7fb3d1ebd234a39bdaf6d82aa3097dc40bf5150315b05d72ff3e71b85a04026a28a1a4240625d28f6bfa7900a6cf2a0f642bb5ae605812e1503af37c150
+DIST enlightenment-0.19.8.tar.xz 24594628 SHA256 b1a9b76bb8282b266f12a0de1e83126deffbb8bb4fbea6901831cd00b09503f9 SHA512 531e90ca68fbc75ead4cbf389e48e0ca5b3c39f181bec154271301f7893810a976145bc34eb0a95adf08aa24c11a6b85936856fe0bb5a0ca61cfddbb608fc48b WHIRLPOOL 1795762d27dfb7d8f67953b1154ef3471d392a246b36ac7687a70a2e5d66e619b786c6510bb8563806666caea7b966d6d3bbaace04d2a2f9063a5dfa5b611309
diff --git a/x11-wm/enlightenment/enlightenment-0.16.9999.ebuild b/x11-wm/enlightenment/enlightenment-0.16.9999.ebuild
new file mode 100644
index 000000000000..3fa45b6489a3
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-0.16.9999.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+if [[ ${PV} == *9999 ]] ; then
+ ESVN_REPO_URI="http://svn.enlightenment.org/svn/e/trunk/E16/e"
+ inherit subversion autotools
+ SRC_URI=""
+ #KEYWORDS=""
+ S=${WORKDIR}/e16/e
+else
+ SRC_URI="mirror://sourceforge/enlightenment/e16-${PV/_/-}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+ S=${WORKDIR}/e16-${PV/_pre?}
+fi
+inherit eutils
+
+DESCRIPTION="Enlightenment Window Manager (e16)"
+HOMEPAGE="http://www.enlightenment.org/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="dbus doc nls pango pulseaudio xcomposite xinerama xrandr"
+
+RDEPEND="pulseaudio? ( media-sound/pulseaudio )
+ dbus? ( sys-apps/dbus )
+ pango? ( x11-libs/pango )
+ =media-libs/freetype-2*
+ >=media-libs/imlib2-1.3.0[X]
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXdamage
+ x11-libs/libXxf86vm
+ x11-libs/libXft
+ xrandr? ( x11-libs/libXrandr )
+ x11-libs/libXrender
+ x11-misc/xbitmaps
+ xinerama? ( x11-libs/libXinerama )
+ xcomposite? ( x11-libs/libXcomposite )
+ nls? ( virtual/libintl )
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ xinerama? ( x11-proto/xineramaproto )
+ xcomposite? ( x11-proto/compositeproto )
+ x11-proto/xproto
+ nls? ( sys-devel/gettext )"
+PDEPEND="doc? ( app-doc/edox-data )"
+
+src_prepare() {
+ if [[ ! -e configure ]] ; then
+ eautopoint
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable dbus) \
+ $(use_enable pulseaudio sound-pulse) \
+ --disable-sound-esound \
+ $(use_enable pango) \
+ $(use_enable xinerama) \
+ $(use_enable xrandr) \
+ $(use_enable xcomposite composite) \
+ --disable-docs \
+ --enable-zoom
+}
+
+src_install() {
+ default
+ dodoc COMPLIANCE sample-scripts/*
+ dohtml docs/e16.html
+}
diff --git a/x11-wm/enlightenment/enlightenment-0.17.6.ebuild b/x11-wm/enlightenment/enlightenment-0.17.6.ebuild
new file mode 100644
index 000000000000..f39b170c643c
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-0.17.6.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools enlightenment
+
+DESCRIPTION="Enlightenment DR17 window manager"
+SRC_URI="http://download.enlightenment.org/releases/${P}.tar.bz2"
+
+LICENSE="BSD-2"
+KEYWORDS="amd64 x86"
+SLOT="0.17/${PV%%_*}"
+
+# The @ is just an anchor to expand from
+__EVRY_MODS=""
+__CONF_MODS="
+ +@applications +@dialogs +@display +@edgebindings
+ +@interaction +@intl +@keybindings +@menus
+ +@paths +@performance +@randr +@shelves +@theme
+ +@window-manipulation +@window-remembers"
+__NORM_MODS="
+ @access +@backlight +@battery +@clock +@comp +@connman +@cpufreq +@dropshadow
+ +@everything +@fileman +@fileman-opinfo +@gadman +@ibar +@ibox +@illume2
+ +@mixer +@msgbus +@notification +@pager +@quickaccess +@shot +@start
+ +@syscon +@systray +@tasks +@temperature +@tiling +@winlist +@wizard +@xkbswitch"
+IUSE_E_MODULES="
+ ${__CONF_MODS//@/enlightenment_modules_conf-}
+ ${__NORM_MODS//@/enlightenment_modules_}"
+
+IUSE="pam spell static-libs +udev ukit ${IUSE_E_MODULES}"
+
+RDEPEND="
+ pam? ( sys-libs/pam )
+ || ( >=dev-libs/efl-1.8.4[X,eet,jpeg(+),png] >=dev-libs/efl-1.8.4[xcb,eet,jpeg(+),png] )
+ >=dev-libs/e_dbus-1.7.10
+ ukit? ( >=dev-libs/e_dbus-1.7.10[udev] )
+ x11-libs/xcb-util-keysyms"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${P%%_*}
+
+src_prepare() {
+ sed -i "s:1.7.10:1.7.9:g" configure.ac
+ eautoreconf
+ epatch "${FILESDIR}"/quickstart.diff
+ enlightenment_src_prepare
+}
+
+src_configure() {
+ E_ECONF+=(
+ --disable-install-sysactions
+ --disable-elementary
+ $(use_enable doc)
+ --disable-device-hal
+ --enable-emotion
+ --disable-mount-hal
+ $(use_enable nls)
+ $(use_enable pam)
+ --enable-device-udev
+ $(use_enable udev mount-eeze)
+ $(use_enable ukit mount-udisks)
+ --disable-physics
+ )
+ local u c
+ for u in ${IUSE_E_MODULES} ; do
+ u=${u#+}
+ c=${u#enlightenment_modules_}
+ E_ECONF+=( $(use_enable ${u} ${c}) )
+ done
+ enlightenment_src_configure
+}
+
+src_install() {
+ enlightenment_src_install
+ insinto /etc/enlightenment
+ newins "${FILESDIR}"/gentoo-sysactions.conf sysactions.conf
+}
diff --git a/x11-wm/enlightenment/enlightenment-0.17.9999.ebuild b/x11-wm/enlightenment/enlightenment-0.17.9999.ebuild
new file mode 100644
index 000000000000..d1ada7b5919e
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-0.17.9999.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+MY_P=${P/_/-}
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_SUB_PROJECT="core"
+ EGIT_URI_APPEND="${PN}"
+else
+ SRC_URI="http://download.enlightenment.org/rel/apps/${PN}/${MY_P}.tar.xz"
+ EKEY_STATE="snap"
+fi
+
+inherit enlightenment
+
+DESCRIPTION="Enlightenment DR17 window manager"
+
+LICENSE="BSD-2"
+KEYWORDS="~amd64 ~arm ~x86"
+SLOT="0.17/${PV%%_*}"
+
+# The @ is just an anchor to expand from
+__EVRY_MODS=""
+__CONF_MODS="
+ +@applications +@comp +@dialogs +@display
+ +@interaction +@intl +@menus
+ +@paths +@performance +@randr +@shelves +@theme +@wallpaper2
+ +@window-manipulation +@window-remembers"
+__NORM_MODS="
+ @access +@appmenu +@backlight +@bluez4 +@battery +@clock
+ +@connman +@contact +@cpufreq +@everything +@fileman
+ +@fileman-opinfo +@gadman +@ibar +@ibox +@illume2 +@mixer +@msgbus
+ +@music-control +@notification +@pager +@quickaccess +@shot
+ +@start +@syscon +@systray +@tasks +@teamwork +@temperature +@tiling
+ +@winlist +@wizard @wl-desktop-shell @wl-screenshot +@xkbswitch"
+IUSE_E_MODULES="
+ ${__CONF_MODS//@/enlightenment_modules_conf-}
+ ${__NORM_MODS//@/enlightenment_modules_}"
+
+IUSE="pam spell static-libs systemd +udev ukit wayland ${IUSE_E_MODULES}"
+
+RDEPEND="
+ pam? ( sys-libs/pam )
+ systemd? ( sys-apps/systemd )
+ wayland? (
+ dev-libs/efl[wayland]
+ >=dev-libs/wayland-1.2.0
+ >=x11-libs/pixman-0.31.1
+ >=x11-libs/libxkbcommon-0.3.1
+ )
+ >=dev-libs/efl-${PV}[X]
+ >=media-libs/elementary-${PV}
+ x11-libs/xcb-util-keysyms"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ epatch "${FILESDIR}"/quickstart.diff
+ enlightenment_src_prepare
+}
+
+src_configure() {
+ E_ECONF=(
+ --disable-install-sysactions
+ $(use_enable doc)
+ --disable-device-hal
+ $(use_enable nls)
+ $(use_enable pam)
+ $(use_enable systemd)
+ --enable-device-udev
+ $(use_enable udev mount-eeze)
+ $(use_enable ukit mount-udisks)
+ $(use_enable wayland wayland-clients)
+ )
+ local u c
+ for u in ${IUSE_E_MODULES} ; do
+ u=${u#+}
+ c=${u#enlightenment_modules_}
+ E_ECONF+=( $(use_enable ${u} ${c}) )
+ done
+ enlightenment_src_configure
+}
+
+src_install() {
+ enlightenment_src_install
+ insinto /etc/enlightenment
+ newins "${FILESDIR}"/gentoo-sysactions.conf sysactions.conf
+}
diff --git a/x11-wm/enlightenment/enlightenment-0.18.7.ebuild b/x11-wm/enlightenment/enlightenment-0.18.7.ebuild
new file mode 100644
index 000000000000..f75254c8129d
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-0.18.7.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+MY_P=${P/_/-}
+
+if [[ "${PV}" == "9999" ]] ; then
+ EGIT_SUB_PROJECT="core"
+ EGIT_URI_APPEND="${PN}"
+else
+ SRC_URI="http://download.enlightenment.org/rel/apps/${PN}/${MY_P}.tar.bz2"
+ EKEY_STATE="snap"
+fi
+
+inherit enlightenment
+
+DESCRIPTION="Enlightenment DR17 window manager"
+
+LICENSE="BSD-2"
+KEYWORDS="~amd64 ~arm ~x86"
+SLOT="0.17/${PV%%_*}"
+
+# The @ is just an anchor to expand from
+__EVRY_MODS=""
+__CONF_MODS="
+ +@applications +@comp +@dialogs +@display
+ +@interaction +@intl +@menus
+ +@paths +@performance +@randr +@shelves +@theme +@wallpaper2
+ +@window-manipulation +@window-remembers"
+__NORM_MODS="
+ @access +@appmenu +@backlight +@bluez4 +@battery +@clock
+ +@connman +@contact +@cpufreq +@everything +@fileman
+ +@fileman-opinfo +@gadman +@ibar +@ibox +@illume2 +@mixer +@msgbus
+ +@music-control +@notification +@pager +@quickaccess +@shot
+ +@start +@syscon +@systray +@tasks +@teamwork +@temperature +@tiling
+ +@winlist +@wizard @wl-desktop-shell @wl-screenshot +@xkbswitch"
+IUSE_E_MODULES="
+ ${__CONF_MODS//@/enlightenment_modules_conf-}
+ ${__NORM_MODS//@/enlightenment_modules_}"
+
+IUSE="pam spell static-libs systemd +udev ukit wayland ${IUSE_E_MODULES}"
+
+RDEPEND="
+ pam? ( sys-libs/pam )
+ systemd? ( sys-apps/systemd )
+ wayland? ( dev-libs/efl[wayland]
+ >=dev-libs/wayland-1.2.0
+ >=x11-libs/pixman-0.31.1
+ >=x11-libs/libxkbcommon-0.3.1
+ )
+ >=dev-libs/efl-1.8.3
+ || ( >=dev-libs/efl-1.8.3[X] >=dev-libs/efl-1.8.3[xcb] )
+ >=media-libs/elementary-1.8.2
+ x11-libs/xcb-util-keysyms"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ epatch "${FILESDIR}"/quickstart.diff
+ enlightenment_src_prepare
+}
+
+src_configure() {
+ E_ECONF+=(
+ --disable-install-sysactions
+ $(use_enable doc)
+ --disable-device-hal
+ $(use_enable nls)
+ $(use_enable pam)
+ $(use_enable systemd)
+ --enable-device-udev
+ $(use_enable udev mount-eeze)
+ $(use_enable ukit mount-udisks)
+ $(use_enable wayland wayland-clients)
+ )
+ local u c
+ for u in ${IUSE_E_MODULES} ; do
+ u=${u#+}
+ c=${u#enlightenment_modules_}
+ E_ECONF+=( $(use_enable ${u} ${c}) )
+ done
+ enlightenment_src_configure
+}
+
+src_install() {
+ enlightenment_src_install
+ insinto /etc/enlightenment
+ newins "${FILESDIR}"/gentoo-sysactions.conf sysactions.conf
+}
diff --git a/x11-wm/enlightenment/enlightenment-0.18.8.ebuild b/x11-wm/enlightenment/enlightenment-0.18.8.ebuild
new file mode 100644
index 000000000000..797a52fa637c
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-0.18.8.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+MY_P=${P/_/-}
+
+if [[ "${PV}" == "9999" ]] ; then
+ EGIT_SUB_PROJECT="core"
+ EGIT_URI_APPEND="${PN}"
+else
+ SRC_URI="http://download.enlightenment.org/rel/apps/${PN}/${MY_P}.tar.bz2"
+ EKEY_STATE="snap"
+fi
+
+inherit enlightenment
+
+DESCRIPTION="Enlightenment DR17 window manager"
+
+LICENSE="BSD-2"
+KEYWORDS="amd64 arm x86"
+SLOT="0.17/${PV%%_*}"
+
+# The @ is just an anchor to expand from
+__EVRY_MODS=""
+__CONF_MODS="
+ +@applications +@comp +@dialogs +@display
+ +@interaction +@intl +@menus
+ +@paths +@performance +@randr +@shelves +@theme +@wallpaper2
+ +@window-manipulation +@window-remembers"
+__NORM_MODS="
+ @access +@appmenu +@backlight +@bluez4 +@battery +@clock
+ +@connman +@contact +@cpufreq +@everything +@fileman
+ +@fileman-opinfo +@gadman +@ibar +@ibox +@illume2 +@mixer +@msgbus
+ +@music-control +@notification +@pager +@quickaccess +@shot
+ +@start +@syscon +@systray +@tasks +@teamwork +@temperature +@tiling
+ +@winlist +@wizard @wl-desktop-shell @wl-screenshot +@xkbswitch"
+IUSE_E_MODULES="
+ ${__CONF_MODS//@/enlightenment_modules_conf-}
+ ${__NORM_MODS//@/enlightenment_modules_}"
+
+IUSE="pam spell static-libs systemd +udev ukit wayland ${IUSE_E_MODULES}"
+
+RDEPEND="
+ pam? ( sys-libs/pam )
+ systemd? ( sys-apps/systemd )
+ wayland? ( dev-libs/efl[wayland]
+ >=dev-libs/wayland-1.2.0
+ >=x11-libs/pixman-0.31.1
+ >=x11-libs/libxkbcommon-0.3.1
+ )
+ >=dev-libs/efl-1.8.3
+ || ( >=dev-libs/efl-1.8.3[X] >=dev-libs/efl-1.8.3[xcb] )
+ >=media-libs/elementary-1.8.2
+ x11-libs/xcb-util-keysyms"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ epatch "${FILESDIR}"/quickstart.diff
+ enlightenment_src_prepare
+}
+
+src_configure() {
+ E_ECONF+=(
+ --disable-install-sysactions
+ $(use_enable doc)
+ --disable-device-hal
+ $(use_enable nls)
+ $(use_enable pam)
+ $(use_enable systemd)
+ --enable-device-udev
+ $(use_enable udev mount-eeze)
+ $(use_enable ukit mount-udisks)
+ $(use_enable wayland wayland-clients)
+ )
+ local u c
+ for u in ${IUSE_E_MODULES} ; do
+ u=${u#+}
+ c=${u#enlightenment_modules_}
+ E_ECONF+=( $(use_enable ${u} ${c}) )
+ done
+ enlightenment_src_configure
+}
+
+src_install() {
+ enlightenment_src_install
+ insinto /etc/enlightenment
+ newins "${FILESDIR}"/gentoo-sysactions.conf sysactions.conf
+}
diff --git a/x11-wm/enlightenment/enlightenment-0.19.4.ebuild b/x11-wm/enlightenment/enlightenment-0.19.4.ebuild
new file mode 100644
index 000000000000..d1ada7b5919e
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-0.19.4.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+MY_P=${P/_/-}
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_SUB_PROJECT="core"
+ EGIT_URI_APPEND="${PN}"
+else
+ SRC_URI="http://download.enlightenment.org/rel/apps/${PN}/${MY_P}.tar.xz"
+ EKEY_STATE="snap"
+fi
+
+inherit enlightenment
+
+DESCRIPTION="Enlightenment DR17 window manager"
+
+LICENSE="BSD-2"
+KEYWORDS="~amd64 ~arm ~x86"
+SLOT="0.17/${PV%%_*}"
+
+# The @ is just an anchor to expand from
+__EVRY_MODS=""
+__CONF_MODS="
+ +@applications +@comp +@dialogs +@display
+ +@interaction +@intl +@menus
+ +@paths +@performance +@randr +@shelves +@theme +@wallpaper2
+ +@window-manipulation +@window-remembers"
+__NORM_MODS="
+ @access +@appmenu +@backlight +@bluez4 +@battery +@clock
+ +@connman +@contact +@cpufreq +@everything +@fileman
+ +@fileman-opinfo +@gadman +@ibar +@ibox +@illume2 +@mixer +@msgbus
+ +@music-control +@notification +@pager +@quickaccess +@shot
+ +@start +@syscon +@systray +@tasks +@teamwork +@temperature +@tiling
+ +@winlist +@wizard @wl-desktop-shell @wl-screenshot +@xkbswitch"
+IUSE_E_MODULES="
+ ${__CONF_MODS//@/enlightenment_modules_conf-}
+ ${__NORM_MODS//@/enlightenment_modules_}"
+
+IUSE="pam spell static-libs systemd +udev ukit wayland ${IUSE_E_MODULES}"
+
+RDEPEND="
+ pam? ( sys-libs/pam )
+ systemd? ( sys-apps/systemd )
+ wayland? (
+ dev-libs/efl[wayland]
+ >=dev-libs/wayland-1.2.0
+ >=x11-libs/pixman-0.31.1
+ >=x11-libs/libxkbcommon-0.3.1
+ )
+ >=dev-libs/efl-${PV}[X]
+ >=media-libs/elementary-${PV}
+ x11-libs/xcb-util-keysyms"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ epatch "${FILESDIR}"/quickstart.diff
+ enlightenment_src_prepare
+}
+
+src_configure() {
+ E_ECONF=(
+ --disable-install-sysactions
+ $(use_enable doc)
+ --disable-device-hal
+ $(use_enable nls)
+ $(use_enable pam)
+ $(use_enable systemd)
+ --enable-device-udev
+ $(use_enable udev mount-eeze)
+ $(use_enable ukit mount-udisks)
+ $(use_enable wayland wayland-clients)
+ )
+ local u c
+ for u in ${IUSE_E_MODULES} ; do
+ u=${u#+}
+ c=${u#enlightenment_modules_}
+ E_ECONF+=( $(use_enable ${u} ${c}) )
+ done
+ enlightenment_src_configure
+}
+
+src_install() {
+ enlightenment_src_install
+ insinto /etc/enlightenment
+ newins "${FILESDIR}"/gentoo-sysactions.conf sysactions.conf
+}
diff --git a/x11-wm/enlightenment/enlightenment-0.19.8.ebuild b/x11-wm/enlightenment/enlightenment-0.19.8.ebuild
new file mode 100644
index 000000000000..d1ada7b5919e
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-0.19.8.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+MY_P=${P/_/-}
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_SUB_PROJECT="core"
+ EGIT_URI_APPEND="${PN}"
+else
+ SRC_URI="http://download.enlightenment.org/rel/apps/${PN}/${MY_P}.tar.xz"
+ EKEY_STATE="snap"
+fi
+
+inherit enlightenment
+
+DESCRIPTION="Enlightenment DR17 window manager"
+
+LICENSE="BSD-2"
+KEYWORDS="~amd64 ~arm ~x86"
+SLOT="0.17/${PV%%_*}"
+
+# The @ is just an anchor to expand from
+__EVRY_MODS=""
+__CONF_MODS="
+ +@applications +@comp +@dialogs +@display
+ +@interaction +@intl +@menus
+ +@paths +@performance +@randr +@shelves +@theme +@wallpaper2
+ +@window-manipulation +@window-remembers"
+__NORM_MODS="
+ @access +@appmenu +@backlight +@bluez4 +@battery +@clock
+ +@connman +@contact +@cpufreq +@everything +@fileman
+ +@fileman-opinfo +@gadman +@ibar +@ibox +@illume2 +@mixer +@msgbus
+ +@music-control +@notification +@pager +@quickaccess +@shot
+ +@start +@syscon +@systray +@tasks +@teamwork +@temperature +@tiling
+ +@winlist +@wizard @wl-desktop-shell @wl-screenshot +@xkbswitch"
+IUSE_E_MODULES="
+ ${__CONF_MODS//@/enlightenment_modules_conf-}
+ ${__NORM_MODS//@/enlightenment_modules_}"
+
+IUSE="pam spell static-libs systemd +udev ukit wayland ${IUSE_E_MODULES}"
+
+RDEPEND="
+ pam? ( sys-libs/pam )
+ systemd? ( sys-apps/systemd )
+ wayland? (
+ dev-libs/efl[wayland]
+ >=dev-libs/wayland-1.2.0
+ >=x11-libs/pixman-0.31.1
+ >=x11-libs/libxkbcommon-0.3.1
+ )
+ >=dev-libs/efl-${PV}[X]
+ >=media-libs/elementary-${PV}
+ x11-libs/xcb-util-keysyms"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ epatch "${FILESDIR}"/quickstart.diff
+ enlightenment_src_prepare
+}
+
+src_configure() {
+ E_ECONF=(
+ --disable-install-sysactions
+ $(use_enable doc)
+ --disable-device-hal
+ $(use_enable nls)
+ $(use_enable pam)
+ $(use_enable systemd)
+ --enable-device-udev
+ $(use_enable udev mount-eeze)
+ $(use_enable ukit mount-udisks)
+ $(use_enable wayland wayland-clients)
+ )
+ local u c
+ for u in ${IUSE_E_MODULES} ; do
+ u=${u#+}
+ c=${u#enlightenment_modules_}
+ E_ECONF+=( $(use_enable ${u} ${c}) )
+ done
+ enlightenment_src_configure
+}
+
+src_install() {
+ enlightenment_src_install
+ insinto /etc/enlightenment
+ newins "${FILESDIR}"/gentoo-sysactions.conf sysactions.conf
+}
diff --git a/x11-wm/enlightenment/enlightenment-1.0.10.ebuild b/x11-wm/enlightenment/enlightenment-1.0.10.ebuild
new file mode 100644
index 000000000000..7acde8ff09f1
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-1.0.10.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+if [[ ${PV} == *9999 ]] ; then
+ ESVN_REPO_URI="http://svn.enlightenment.org/svn/e/trunk/E16/e"
+ inherit subversion autotools
+ SRC_URI=""
+ #KEYWORDS=""
+ S=${WORKDIR}/e16/e
+else
+ SRC_URI="mirror://sourceforge/enlightenment/e16-${PV/_/-}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+ S=${WORKDIR}/e16-${PV/_pre?}
+fi
+inherit eutils
+
+DESCRIPTION="Enlightenment Window Manager (e16)"
+HOMEPAGE="http://www.enlightenment.org/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="dbus doc nls pango pulseaudio xcomposite xinerama xrandr"
+
+RDEPEND="pulseaudio? ( media-sound/pulseaudio )
+ dbus? ( sys-apps/dbus )
+ pango? ( x11-libs/pango )
+ =media-libs/freetype-2*
+ >=media-libs/imlib2-1.3.0[X]
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXdamage
+ x11-libs/libXxf86vm
+ x11-libs/libXft
+ xrandr? ( x11-libs/libXrandr )
+ x11-libs/libXrender
+ x11-misc/xbitmaps
+ xinerama? ( x11-libs/libXinerama )
+ xcomposite? ( x11-libs/libXcomposite )
+ nls? ( virtual/libintl )
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ xinerama? ( x11-proto/xineramaproto )
+ xcomposite? ( x11-proto/compositeproto )
+ x11-proto/xproto
+ nls? ( sys-devel/gettext )"
+PDEPEND="doc? ( app-doc/edox-data )"
+
+src_prepare() {
+ if [[ ! -e configure ]] ; then
+ eautopoint
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable dbus) \
+ $(use_enable pulseaudio sound-pulse) \
+ --disable-sound-esound \
+ $(use_enable pango) \
+ $(use_enable xinerama) \
+ $(use_enable xrandr) \
+ $(use_enable xcomposite composite) \
+ --disable-docs \
+ --enable-zoom
+}
+
+src_install() {
+ default
+ rmdir "${D}"/usr/share/doc/e16 || die #294456
+ dodoc COMPLIANCE sample-scripts/*
+ dohtml docs/e16.html
+}
diff --git a/x11-wm/enlightenment/enlightenment-1.0.11.ebuild b/x11-wm/enlightenment/enlightenment-1.0.11.ebuild
new file mode 100644
index 000000000000..1c44720d0971
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-1.0.11.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+if [[ ${PV} == *9999 ]] ; then
+ ESVN_REPO_URI="http://svn.enlightenment.org/svn/e/trunk/E16/e"
+ inherit subversion autotools
+ SRC_URI=""
+ #KEYWORDS=""
+ S=${WORKDIR}/e16/e
+else
+ SRC_URI="mirror://sourceforge/enlightenment/e16-${PV/_/-}.tar.gz"
+ KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sh sparc x86 ~x86-fbsd"
+ S=${WORKDIR}/e16-${PV/_pre?}
+fi
+inherit eutils
+
+DESCRIPTION="Enlightenment Window Manager (e16)"
+HOMEPAGE="http://www.enlightenment.org/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="dbus doc nls pango pulseaudio xcomposite xinerama xrandr"
+
+RDEPEND="pulseaudio? ( media-sound/pulseaudio )
+ dbus? ( sys-apps/dbus )
+ pango? ( x11-libs/pango )
+ =media-libs/freetype-2*
+ >=media-libs/imlib2-1.3.0[X]
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXdamage
+ x11-libs/libXxf86vm
+ x11-libs/libXft
+ xrandr? ( x11-libs/libXrandr )
+ x11-libs/libXrender
+ x11-misc/xbitmaps
+ xinerama? ( x11-libs/libXinerama )
+ xcomposite? ( x11-libs/libXcomposite )
+ nls? ( virtual/libintl )
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ xinerama? ( x11-proto/xineramaproto )
+ xcomposite? ( x11-proto/compositeproto )
+ x11-proto/xproto
+ nls? ( sys-devel/gettext )"
+PDEPEND="doc? ( app-doc/edox-data )"
+
+src_prepare() {
+ if [[ ! -e configure ]] ; then
+ eautopoint
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable dbus) \
+ $(use_enable pulseaudio sound-pulse) \
+ --disable-sound-esound \
+ $(use_enable pango) \
+ $(use_enable xinerama) \
+ $(use_enable xrandr) \
+ $(use_enable xcomposite composite) \
+ --disable-docs \
+ --enable-zoom
+}
+
+src_install() {
+ default
+ dodoc COMPLIANCE sample-scripts/*
+ dohtml docs/e16.html
+}
diff --git a/x11-wm/enlightenment/enlightenment-1.0.13.ebuild b/x11-wm/enlightenment/enlightenment-1.0.13.ebuild
new file mode 100644
index 000000000000..c06100c24652
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-1.0.13.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+if [[ ${PV} == *9999 ]] ; then
+ ESVN_REPO_URI="http://svn.enlightenment.org/svn/e/trunk/E16/e"
+ inherit subversion autotools
+ SRC_URI=""
+ #KEYWORDS=""
+ S=${WORKDIR}/e16/e
+else
+ SRC_URI="mirror://sourceforge/enlightenment/e16-${PV/_/-}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+ S=${WORKDIR}/e16-${PV/_pre?}
+fi
+inherit eutils
+
+DESCRIPTION="Enlightenment Window Manager (e16)"
+HOMEPAGE="http://www.enlightenment.org/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="dbus doc nls pango pulseaudio xcomposite xinerama xrandr"
+
+RDEPEND="pulseaudio? ( media-sound/pulseaudio )
+ dbus? ( sys-apps/dbus )
+ pango? ( x11-libs/pango )
+ =media-libs/freetype-2*
+ >=media-libs/imlib2-1.3.0[X]
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXdamage
+ x11-libs/libXxf86vm
+ x11-libs/libXft
+ xrandr? ( x11-libs/libXrandr )
+ x11-libs/libXrender
+ x11-misc/xbitmaps
+ xinerama? ( x11-libs/libXinerama )
+ xcomposite? ( x11-libs/libXcomposite )
+ nls? ( virtual/libintl )
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ xinerama? ( x11-proto/xineramaproto )
+ xcomposite? ( x11-proto/compositeproto )
+ x11-proto/xproto
+ nls? ( sys-devel/gettext )"
+PDEPEND="doc? ( app-doc/edox-data )"
+
+src_prepare() {
+ if [[ ! -e configure ]] ; then
+ eautopoint
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable dbus) \
+ $(use_enable pulseaudio sound-pulse) \
+ --disable-sound-esound \
+ $(use_enable pango) \
+ $(use_enable xinerama) \
+ $(use_enable xrandr) \
+ $(use_enable xcomposite composite) \
+ --disable-docs \
+ --enable-zoom
+}
+
+src_install() {
+ default
+ dodoc COMPLIANCE sample-scripts/*
+ dohtml docs/e16.html
+}
diff --git a/x11-wm/enlightenment/enlightenment-1.0.14.ebuild b/x11-wm/enlightenment/enlightenment-1.0.14.ebuild
new file mode 100644
index 000000000000..bba16cf0deb4
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-1.0.14.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+if [[ ${PV} == *9999 ]] ; then
+ ESVN_REPO_URI="http://svn.enlightenment.org/svn/e/trunk/E16/e"
+ inherit subversion autotools
+ SRC_URI=""
+ #KEYWORDS=""
+ S=${WORKDIR}/e16/e
+else
+ SRC_URI="mirror://sourceforge/enlightenment/e16-${PV/_/-}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+ S=${WORKDIR}/e16-${PV/_pre?}
+fi
+inherit eutils
+
+DESCRIPTION="Enlightenment Window Manager (e16)"
+HOMEPAGE="http://www.enlightenment.org/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="dbus doc nls pango pulseaudio xcomposite xinerama xrandr"
+
+RDEPEND="pulseaudio? ( media-sound/pulseaudio )
+ dbus? ( sys-apps/dbus )
+ pango? ( x11-libs/pango )
+ =media-libs/freetype-2*
+ >=media-libs/imlib2-1.3.0[X]
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXdamage
+ x11-libs/libXxf86vm
+ x11-libs/libXft
+ xrandr? ( x11-libs/libXrandr )
+ x11-libs/libXrender
+ x11-misc/xbitmaps
+ xinerama? ( x11-libs/libXinerama )
+ xcomposite? ( x11-libs/libXcomposite )
+ nls? ( virtual/libintl )
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ xinerama? ( x11-proto/xineramaproto )
+ xcomposite? ( x11-proto/compositeproto )
+ x11-proto/xproto
+ nls? ( sys-devel/gettext )"
+PDEPEND="doc? ( app-doc/edox-data )"
+
+src_prepare() {
+ if [[ ! -e configure ]] ; then
+ eautopoint
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable dbus) \
+ $(use_enable pulseaudio sound-pulse) \
+ --disable-sound-esound \
+ $(use_enable pango) \
+ $(use_enable xinerama) \
+ $(use_enable xrandr) \
+ $(use_enable xcomposite composite) \
+ --disable-docs \
+ --enable-zoom
+}
+
+src_install() {
+ default
+ dodoc COMPLIANCE sample-scripts/*
+ dohtml docs/e16.html
+}
diff --git a/x11-wm/enlightenment/enlightenment-1.0.15.ebuild b/x11-wm/enlightenment/enlightenment-1.0.15.ebuild
new file mode 100644
index 000000000000..ccded69d6f92
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-1.0.15.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+if [[ ${PV} == *9999 ]] ; then
+ ESVN_REPO_URI="http://svn.enlightenment.org/svn/e/trunk/E16/e"
+ inherit subversion autotools
+ SRC_URI=""
+ #KEYWORDS=""
+ S=${WORKDIR}/e16/e
+else
+ SRC_URI="mirror://sourceforge/enlightenment/e16-${PV/_/-}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+ S=${WORKDIR}/e16-${PV/_pre?}
+fi
+inherit eutils
+
+DESCRIPTION="Enlightenment Window Manager (e16)"
+HOMEPAGE="http://www.enlightenment.org/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="dbus doc nls pango pulseaudio xcomposite xinerama xrandr"
+
+RDEPEND="pulseaudio? ( media-sound/pulseaudio )
+ dbus? ( sys-apps/dbus )
+ pango? ( x11-libs/pango )
+ =media-libs/freetype-2*
+ >=media-libs/imlib2-1.3.0[X]
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXdamage
+ x11-libs/libXxf86vm
+ x11-libs/libXft
+ xrandr? ( x11-libs/libXrandr )
+ x11-libs/libXrender
+ x11-misc/xbitmaps
+ xinerama? ( x11-libs/libXinerama )
+ xcomposite? ( x11-libs/libXcomposite )
+ nls? ( virtual/libintl )
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ xinerama? ( x11-proto/xineramaproto )
+ xcomposite? ( x11-proto/compositeproto )
+ x11-proto/xproto
+ nls? ( sys-devel/gettext )"
+PDEPEND="doc? ( app-doc/edox-data )"
+
+src_prepare() {
+ if [[ ! -e configure ]] ; then
+ eautopoint
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable dbus) \
+ $(use_enable pulseaudio sound pulse) \
+ $(use_enable pango) \
+ $(use_enable xinerama) \
+ $(use_enable xrandr) \
+ $(use_enable xcomposite composite) \
+ --disable-docs \
+ --enable-zoom
+}
+
+src_install() {
+ default
+ dodoc COMPLIANCE sample-scripts/*
+ dohtml docs/e16.html
+}
diff --git a/x11-wm/enlightenment/enlightenment-1.0.16.ebuild b/x11-wm/enlightenment/enlightenment-1.0.16.ebuild
new file mode 100644
index 000000000000..ccded69d6f92
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-1.0.16.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+if [[ ${PV} == *9999 ]] ; then
+ ESVN_REPO_URI="http://svn.enlightenment.org/svn/e/trunk/E16/e"
+ inherit subversion autotools
+ SRC_URI=""
+ #KEYWORDS=""
+ S=${WORKDIR}/e16/e
+else
+ SRC_URI="mirror://sourceforge/enlightenment/e16-${PV/_/-}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+ S=${WORKDIR}/e16-${PV/_pre?}
+fi
+inherit eutils
+
+DESCRIPTION="Enlightenment Window Manager (e16)"
+HOMEPAGE="http://www.enlightenment.org/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="dbus doc nls pango pulseaudio xcomposite xinerama xrandr"
+
+RDEPEND="pulseaudio? ( media-sound/pulseaudio )
+ dbus? ( sys-apps/dbus )
+ pango? ( x11-libs/pango )
+ =media-libs/freetype-2*
+ >=media-libs/imlib2-1.3.0[X]
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXdamage
+ x11-libs/libXxf86vm
+ x11-libs/libXft
+ xrandr? ( x11-libs/libXrandr )
+ x11-libs/libXrender
+ x11-misc/xbitmaps
+ xinerama? ( x11-libs/libXinerama )
+ xcomposite? ( x11-libs/libXcomposite )
+ nls? ( virtual/libintl )
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ xinerama? ( x11-proto/xineramaproto )
+ xcomposite? ( x11-proto/compositeproto )
+ x11-proto/xproto
+ nls? ( sys-devel/gettext )"
+PDEPEND="doc? ( app-doc/edox-data )"
+
+src_prepare() {
+ if [[ ! -e configure ]] ; then
+ eautopoint
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable dbus) \
+ $(use_enable pulseaudio sound pulse) \
+ $(use_enable pango) \
+ $(use_enable xinerama) \
+ $(use_enable xrandr) \
+ $(use_enable xcomposite composite) \
+ --disable-docs \
+ --enable-zoom
+}
+
+src_install() {
+ default
+ dodoc COMPLIANCE sample-scripts/*
+ dohtml docs/e16.html
+}
diff --git a/x11-wm/enlightenment/enlightenment-1.0.17.ebuild b/x11-wm/enlightenment/enlightenment-1.0.17.ebuild
new file mode 100644
index 000000000000..ccded69d6f92
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-1.0.17.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+if [[ ${PV} == *9999 ]] ; then
+ ESVN_REPO_URI="http://svn.enlightenment.org/svn/e/trunk/E16/e"
+ inherit subversion autotools
+ SRC_URI=""
+ #KEYWORDS=""
+ S=${WORKDIR}/e16/e
+else
+ SRC_URI="mirror://sourceforge/enlightenment/e16-${PV/_/-}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+ S=${WORKDIR}/e16-${PV/_pre?}
+fi
+inherit eutils
+
+DESCRIPTION="Enlightenment Window Manager (e16)"
+HOMEPAGE="http://www.enlightenment.org/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="dbus doc nls pango pulseaudio xcomposite xinerama xrandr"
+
+RDEPEND="pulseaudio? ( media-sound/pulseaudio )
+ dbus? ( sys-apps/dbus )
+ pango? ( x11-libs/pango )
+ =media-libs/freetype-2*
+ >=media-libs/imlib2-1.3.0[X]
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXdamage
+ x11-libs/libXxf86vm
+ x11-libs/libXft
+ xrandr? ( x11-libs/libXrandr )
+ x11-libs/libXrender
+ x11-misc/xbitmaps
+ xinerama? ( x11-libs/libXinerama )
+ xcomposite? ( x11-libs/libXcomposite )
+ nls? ( virtual/libintl )
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ xinerama? ( x11-proto/xineramaproto )
+ xcomposite? ( x11-proto/compositeproto )
+ x11-proto/xproto
+ nls? ( sys-devel/gettext )"
+PDEPEND="doc? ( app-doc/edox-data )"
+
+src_prepare() {
+ if [[ ! -e configure ]] ; then
+ eautopoint
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable dbus) \
+ $(use_enable pulseaudio sound pulse) \
+ $(use_enable pango) \
+ $(use_enable xinerama) \
+ $(use_enable xrandr) \
+ $(use_enable xcomposite composite) \
+ --disable-docs \
+ --enable-zoom
+}
+
+src_install() {
+ default
+ dodoc COMPLIANCE sample-scripts/*
+ dohtml docs/e16.html
+}
diff --git a/x11-wm/enlightenment/enlightenment-1.0.2.ebuild b/x11-wm/enlightenment/enlightenment-1.0.2.ebuild
new file mode 100644
index 000000000000..ab74872f8d1a
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-1.0.2.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+if [[ ${PV} == *9999 ]] ; then
+ ESVN_REPO_URI="http://svn.enlightenment.org/svn/e/trunk/E16/e"
+ inherit subversion autotools
+ SRC_URI=""
+ #KEYWORDS=""
+ S=${WORKDIR}/e16/e
+else
+ SRC_URI="mirror://sourceforge/enlightenment/e16-${PV/_/-}.tar.gz"
+ KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sh sparc x86 ~x86-fbsd"
+ S=${WORKDIR}/e16-${PV/_pre?}
+fi
+inherit eutils
+
+DESCRIPTION="Enlightenment Window Manager"
+HOMEPAGE="http://www.enlightenment.org/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="doc dbus nls pango pulseaudio xcomposite xinerama xrandr"
+
+RDEPEND="pulseaudio? ( media-sound/pulseaudio )
+ dbus? ( sys-apps/dbus )
+ pango? ( x11-libs/pango )
+ =media-libs/freetype-2*
+ >=media-libs/imlib2-1.3.0[X]
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXdamage
+ x11-libs/libXxf86vm
+ x11-libs/libXft
+ xrandr? ( x11-libs/libXrandr )
+ x11-libs/libXrender
+ x11-misc/xbitmaps
+ xinerama? ( x11-libs/libXinerama )
+ xcomposite? ( x11-libs/libXcomposite )
+ nls? ( virtual/libintl )
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ xinerama? ( x11-proto/xineramaproto )
+ xcomposite? ( x11-proto/compositeproto )
+ x11-proto/xproto
+ nls? ( sys-devel/gettext )"
+PDEPEND="doc? ( app-doc/edox-data )"
+
+src_prepare() {
+ if [[ ! -e configure ]] ; then
+ eautopoint
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable dbus) \
+ $(use_enable pulseaudio sound-pulse) \
+ --disable-sound-esound \
+ $(use_enable pango) \
+ $(use_enable xinerama) \
+ $(use_enable xrandr) \
+ $(use_enable xcomposite composite) \
+ --disable-docs \
+ --enable-zoom
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ rmdir "${D}"/usr/share/doc/e16 || die #294456
+ dodoc AUTHORS ChangeLog COMPLIANCE TODO
+}
diff --git a/x11-wm/enlightenment/enlightenment-1.0.6.ebuild b/x11-wm/enlightenment/enlightenment-1.0.6.ebuild
new file mode 100644
index 000000000000..fa8055f8b6fe
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-1.0.6.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+if [[ ${PV} == *9999 ]] ; then
+ ESVN_REPO_URI="http://svn.enlightenment.org/svn/e/trunk/E16/e"
+ inherit subversion autotools
+ SRC_URI=""
+ #KEYWORDS=""
+ S=${WORKDIR}/e16/e
+else
+ SRC_URI="mirror://sourceforge/enlightenment/e16-${PV/_/-}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+ S=${WORKDIR}/e16-${PV/_pre?}
+fi
+inherit eutils
+
+DESCRIPTION="Enlightenment Window Manager"
+HOMEPAGE="http://www.enlightenment.org/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="dbus doc nls pango pulseaudio xcomposite xinerama xrandr"
+
+RDEPEND="pulseaudio? ( media-sound/pulseaudio )
+ dbus? ( sys-apps/dbus )
+ pango? ( x11-libs/pango )
+ =media-libs/freetype-2*
+ >=media-libs/imlib2-1.3.0[X]
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXdamage
+ x11-libs/libXxf86vm
+ x11-libs/libXft
+ xrandr? ( x11-libs/libXrandr )
+ x11-libs/libXrender
+ x11-misc/xbitmaps
+ xinerama? ( x11-libs/libXinerama )
+ xcomposite? ( x11-libs/libXcomposite )
+ nls? ( virtual/libintl )
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ xinerama? ( x11-proto/xineramaproto )
+ xcomposite? ( x11-proto/compositeproto )
+ x11-proto/xproto
+ nls? ( sys-devel/gettext )"
+PDEPEND="doc? ( app-doc/edox-data )"
+
+src_prepare() {
+ if [[ ! -e configure ]] ; then
+ eautopoint
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable dbus) \
+ $(use_enable pulseaudio sound-pulse) \
+ --disable-sound-esound \
+ $(use_enable pango) \
+ $(use_enable xinerama) \
+ $(use_enable xrandr) \
+ $(use_enable xcomposite composite) \
+ --disable-docs \
+ --enable-zoom
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ rmdir "${D}"/usr/share/doc/e16 || die #294456
+ dodoc AUTHORS ChangeLog COMPLIANCE TODO sample-scripts/*
+ dohtml docs/e16.html
+}
diff --git a/x11-wm/enlightenment/enlightenment-1.0.7.ebuild b/x11-wm/enlightenment/enlightenment-1.0.7.ebuild
new file mode 100644
index 000000000000..fa8055f8b6fe
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-1.0.7.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+if [[ ${PV} == *9999 ]] ; then
+ ESVN_REPO_URI="http://svn.enlightenment.org/svn/e/trunk/E16/e"
+ inherit subversion autotools
+ SRC_URI=""
+ #KEYWORDS=""
+ S=${WORKDIR}/e16/e
+else
+ SRC_URI="mirror://sourceforge/enlightenment/e16-${PV/_/-}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+ S=${WORKDIR}/e16-${PV/_pre?}
+fi
+inherit eutils
+
+DESCRIPTION="Enlightenment Window Manager"
+HOMEPAGE="http://www.enlightenment.org/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="dbus doc nls pango pulseaudio xcomposite xinerama xrandr"
+
+RDEPEND="pulseaudio? ( media-sound/pulseaudio )
+ dbus? ( sys-apps/dbus )
+ pango? ( x11-libs/pango )
+ =media-libs/freetype-2*
+ >=media-libs/imlib2-1.3.0[X]
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXdamage
+ x11-libs/libXxf86vm
+ x11-libs/libXft
+ xrandr? ( x11-libs/libXrandr )
+ x11-libs/libXrender
+ x11-misc/xbitmaps
+ xinerama? ( x11-libs/libXinerama )
+ xcomposite? ( x11-libs/libXcomposite )
+ nls? ( virtual/libintl )
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ xinerama? ( x11-proto/xineramaproto )
+ xcomposite? ( x11-proto/compositeproto )
+ x11-proto/xproto
+ nls? ( sys-devel/gettext )"
+PDEPEND="doc? ( app-doc/edox-data )"
+
+src_prepare() {
+ if [[ ! -e configure ]] ; then
+ eautopoint
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable dbus) \
+ $(use_enable pulseaudio sound-pulse) \
+ --disable-sound-esound \
+ $(use_enable pango) \
+ $(use_enable xinerama) \
+ $(use_enable xrandr) \
+ $(use_enable xcomposite composite) \
+ --disable-docs \
+ --enable-zoom
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ rmdir "${D}"/usr/share/doc/e16 || die #294456
+ dodoc AUTHORS ChangeLog COMPLIANCE TODO sample-scripts/*
+ dohtml docs/e16.html
+}
diff --git a/x11-wm/enlightenment/enlightenment-1.0.8.ebuild b/x11-wm/enlightenment/enlightenment-1.0.8.ebuild
new file mode 100644
index 000000000000..7f6f2ab541a1
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-1.0.8.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+if [[ ${PV} == *9999 ]] ; then
+ ESVN_REPO_URI="http://svn.enlightenment.org/svn/e/trunk/E16/e"
+ inherit subversion autotools
+ SRC_URI=""
+ #KEYWORDS=""
+ S=${WORKDIR}/e16/e
+else
+ SRC_URI="mirror://sourceforge/enlightenment/e16-${PV/_/-}.tar.gz"
+ KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sh sparc x86 ~x86-fbsd"
+ S=${WORKDIR}/e16-${PV/_pre?}
+fi
+inherit eutils
+
+DESCRIPTION="Enlightenment Window Manager"
+HOMEPAGE="http://www.enlightenment.org/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="dbus doc nls pango pulseaudio xcomposite xinerama xrandr"
+
+RDEPEND="pulseaudio? ( media-sound/pulseaudio )
+ dbus? ( sys-apps/dbus )
+ pango? ( x11-libs/pango )
+ =media-libs/freetype-2*
+ >=media-libs/imlib2-1.3.0[X]
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXdamage
+ x11-libs/libXxf86vm
+ x11-libs/libXft
+ xrandr? ( x11-libs/libXrandr )
+ x11-libs/libXrender
+ x11-misc/xbitmaps
+ xinerama? ( x11-libs/libXinerama )
+ xcomposite? ( x11-libs/libXcomposite )
+ nls? ( virtual/libintl )
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ xinerama? ( x11-proto/xineramaproto )
+ xcomposite? ( x11-proto/compositeproto )
+ x11-proto/xproto
+ nls? ( sys-devel/gettext )"
+PDEPEND="doc? ( app-doc/edox-data )"
+
+src_prepare() {
+ if [[ ! -e configure ]] ; then
+ eautopoint
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable dbus) \
+ $(use_enable pulseaudio sound-pulse) \
+ --disable-sound-esound \
+ $(use_enable pango) \
+ $(use_enable xinerama) \
+ $(use_enable xrandr) \
+ $(use_enable xcomposite composite) \
+ --disable-docs \
+ --enable-zoom
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ rmdir "${D}"/usr/share/doc/e16 || die #294456
+ dodoc AUTHORS ChangeLog COMPLIANCE TODO sample-scripts/*
+ dohtml docs/e16.html
+}
diff --git a/x11-wm/enlightenment/enlightenment-1.0.9.ebuild b/x11-wm/enlightenment/enlightenment-1.0.9.ebuild
new file mode 100644
index 000000000000..fa8055f8b6fe
--- /dev/null
+++ b/x11-wm/enlightenment/enlightenment-1.0.9.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+if [[ ${PV} == *9999 ]] ; then
+ ESVN_REPO_URI="http://svn.enlightenment.org/svn/e/trunk/E16/e"
+ inherit subversion autotools
+ SRC_URI=""
+ #KEYWORDS=""
+ S=${WORKDIR}/e16/e
+else
+ SRC_URI="mirror://sourceforge/enlightenment/e16-${PV/_/-}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+ S=${WORKDIR}/e16-${PV/_pre?}
+fi
+inherit eutils
+
+DESCRIPTION="Enlightenment Window Manager"
+HOMEPAGE="http://www.enlightenment.org/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="dbus doc nls pango pulseaudio xcomposite xinerama xrandr"
+
+RDEPEND="pulseaudio? ( media-sound/pulseaudio )
+ dbus? ( sys-apps/dbus )
+ pango? ( x11-libs/pango )
+ =media-libs/freetype-2*
+ >=media-libs/imlib2-1.3.0[X]
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXdamage
+ x11-libs/libXxf86vm
+ x11-libs/libXft
+ xrandr? ( x11-libs/libXrandr )
+ x11-libs/libXrender
+ x11-misc/xbitmaps
+ xinerama? ( x11-libs/libXinerama )
+ xcomposite? ( x11-libs/libXcomposite )
+ nls? ( virtual/libintl )
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ xinerama? ( x11-proto/xineramaproto )
+ xcomposite? ( x11-proto/compositeproto )
+ x11-proto/xproto
+ nls? ( sys-devel/gettext )"
+PDEPEND="doc? ( app-doc/edox-data )"
+
+src_prepare() {
+ if [[ ! -e configure ]] ; then
+ eautopoint
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable dbus) \
+ $(use_enable pulseaudio sound-pulse) \
+ --disable-sound-esound \
+ $(use_enable pango) \
+ $(use_enable xinerama) \
+ $(use_enable xrandr) \
+ $(use_enable xcomposite composite) \
+ --disable-docs \
+ --enable-zoom
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ rmdir "${D}"/usr/share/doc/e16 || die #294456
+ dodoc AUTHORS ChangeLog COMPLIANCE TODO sample-scripts/*
+ dohtml docs/e16.html
+}
diff --git a/x11-wm/enlightenment/files/gentoo-sysactions.conf b/x11-wm/enlightenment/files/gentoo-sysactions.conf
new file mode 100644
index 000000000000..fe676238b907
--- /dev/null
+++ b/x11-wm/enlightenment/files/gentoo-sysactions.conf
@@ -0,0 +1,76 @@
+# ENLIGHTENMENT SYSTEM ACTIONS CONFIGURATION
+#
+# This is a system configuration for allowing or denying certain users or
+# groups to be able to do certain actions that involve system restricted
+# actions such as halt, reboot, suspend, hibernate etc.
+#
+# This file is read in order from top to bottom - the first rule to MATCH
+# will be used for a user or a group, and nothing after that is read.
+#
+# You must put all the ACTION definitons BEFORE user and group rule matches.
+# Any action definitons after a rule match has been found will be ignored.
+# This allows actions to be re-defined for different user groups, so matches
+# so the command for an action can change for matches to the rules later on.
+#
+# Any user or group NOT matched by an allow or a deny will be ALLOWED to
+# perform the action by default (system administrators should be aware of
+# this and implement whatever policies they see fit). Generally speaking
+# a user of a workstation, desktop or laptop is intended to have such abilities
+# to perform these actions, thus the default of allow. For multi-user systems
+# the system administrator is considerd capable enough to restrict what they
+# see they need to.
+#
+# A WARNING to admins: do NOT allow access for users to this system remotely
+# UNLESS you fully trust them or you have locked down permissions to halt/reboot
+# suspend etc. here first. You have been warned.
+#
+# FORMAT:
+#
+# action: halt /sbin/shutdown -h now
+# action: reboot /sbin/shutdown -r now
+# action: suspend /etc/acpi/sleep.sh force
+# action: hibernate /etc/acpi/hibernate.sh force
+#
+# user: username allow: halt reboot suspend hibernate
+# group: groupname deny: *
+# group: * deny: *
+# user: * allow: suspend
+# user: billy allow: halt reboot
+# group: staff deny: halt suspend hibernate
+#
+# etc.
+#
+# user and group name can use glob matches (* == all for example) like the
+# shell. as can action names allowed or denied.
+
+action: halt /sbin/shutdown -h now
+action: reboot /sbin/shutdown -r now
+action: suspend /usr/sbin/pm-suspend
+action: hibernate /usr/sbin/pm-hibernate
+
+# on FreeBSD use this instead of the above.
+#action suspend /usr/sbin/zzz
+
+# root is allowed to do anything - but it needs to be here explicitly anyway
+user: root allow: *
+# members of operator, staff and admin groups should be able to do all
+group: operator allow: *
+group: staff allow: *
+group: admin allow: *
+group: sys allow: *
+group: wheel allow: *
+# common "user" groups for "console users" on desktops/laptops
+group: dialout allow: *
+group: disk allow: *
+group: adm allow: *
+group: cdrom allow: *
+group: floppy allow: *
+group: audio allow: *
+group: dip allow: *
+group: plugdev allow: *
+# put in a list of other users and groups here that are allowed or denied etc.
+# e.g.
+# user: myuser allow: *
+# user: another allow: suspend hibernate
+# deny everyone else by default
+user: * deny: *
diff --git a/x11-wm/enlightenment/files/quickstart.diff b/x11-wm/enlightenment/files/quickstart.diff
new file mode 100644
index 000000000000..c7d3f38086c3
--- /dev/null
+++ b/x11-wm/enlightenment/files/quickstart.diff
@@ -0,0 +1,13 @@
+Index: src/bin/e_main.c
+===================================================================
+--- src/bin/e_main.c (revision 61690)
++++ src/bin/e_main.c (working copy)
+@@ -93,7 +93,7 @@
+ static Eina_Bool _e_main_cb_startup_fake_end(void *data __UNUSED__);
+
+ /* local variables */
+-static Eina_Bool really_know = EINA_FALSE;
++static Eina_Bool really_know = EINA_TRUE;
+ static Eina_Bool locked = EINA_FALSE;
+ static Eina_Bool inloop = EINA_FALSE;
+ static jmp_buf x_fatal_buff;
diff --git a/x11-wm/enlightenment/metadata.xml b/x11-wm/enlightenment/metadata.xml
new file mode 100644
index 000000000000..cc4abd49cba0
--- /dev/null
+++ b/x11-wm/enlightenment/metadata.xml
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>vapier@gentoo.org</email>
+ </maintainer>
+ <maintainer>
+ <email>enlightenment@gentoo.org</email>
+ <description>Maintainer for enlightenment:0.17</description>
+ </maintainer>
+ <longdescription>
+Enlightenment is a completely themeable, highly configurable Window Manager for
+the X Window System, traditionally used in Unix environments.
+
+Enlightenment Features:
+* Fully configurable window borders
+* Iconboxes to store icons in
+* Graphical Pager that also does miniature snapshots of your screen
+* IPC mechanism to remote-control Enlightenment
+* Theme support
+* Menus
+* Translucent moving of windows
+* Window groups
+* Virtual Desktops
+* Multiple Desktops (more than one desktop of Virtual Desktops)
+* Desktop Background selection and management
+* Sound support
+* Multiple focus modes
+* Many resize and move mode settings
+* Manual placement of windows option
+* Autoraising of windows option
+* Tooltips
+* Configurable keybindings
+* Configurable desktop bindings
+* DGA support for fullscreen client zoom
+* Window shading
+* Miniature snapshot icons
+* Multiple border styles at once
+* Window layers
+* Array menus
+* Internal configuration dialogs
+* Auto-scrolling menus
+* KDE hint support
+* GNOME hint support
+* Primitive Windowmaker/Afterstep dock App support.
+* X11R6 session management support
+* Internal per-app based session and property management.
+* Background auto scanning support
+* Truetype anti-aliased font support
+* Window auto-cleanup support
+* Graphical on-line help.
+</longdescription>
+ <use>
+ <flag name="pango">Enable pango font rendering</flag>
+ <flag name="xrandr">Enable support for the X xrandr extension</flag>
+ <flag name="udev">Use sys-fs/udev to determine available devices</flag>
+ <flag name="ukit">Use upower/udisks to automount devices</flag>
+ <flag name="enlightenment_modules_access">Accessibility module designed to improve ease of use for the vision impaired and the blind</flag>
+ <flag name="enlightenment_modules_appmenu">Gadget that hold the toolbar of the foreground application</flag>
+ <flag name="enlightenment_modules_backlight">Backlight control slider gadget</flag>
+ <flag name="enlightenment_modules_battery">A gadget to visualize your battery status</flag>
+ <flag name="enlightenment_modules_bluez4">Configure Bluetooth devices</flag>
+ <flag name="enlightenment_modules_clock">Nice clock gadget to show current time</flag>
+ <flag name="enlightenment_modules_comp">Enlightenment Composite Manager</flag>
+ <flag name="enlightenment_modules_connman">Control Wifi and wired networks as a user</flag>
+ <flag name="enlightenment_modules_contact">Enable the contact module</flag>
+ <flag name="enlightenment_modules_cpufreq">Gadget to monitor and change the CPU frequency</flag>
+ <flag name="enlightenment_modules_dropshadow">Module to add a dropshadow to windows</flag>
+ <flag name="enlightenment_modules_everything">The run command module provides an application launcher dialog</flag>
+ <flag name="enlightenment_modules_fileman">Enlightenment's integrated file manager</flag>
+ <flag name="enlightenment_modules_fileman-opinfo">Can be placed on the desktop or in a shelf</flag>
+ <flag name="enlightenment_modules_gadman">Module to manage gadgets on the desktop</flag>
+ <flag name="enlightenment_modules_ibar">Iconic application launcher</flag>
+ <flag name="enlightenment_modules_ibox">A home for your iconified applications</flag>
+ <flag name="enlightenment_modules_illume2">Illume2 - next generation of illume - special WM mode for embedded devices and set of plugins with same purpose</flag>
+ <flag name="enlightenment_modules_mixer">A module to provide a mixer for changing volume</flag>
+ <flag name="enlightenment_modules_msgbus">DBus Extension</flag>
+ <flag name="enlightenment_modules_music-control">Control your music in your shelf</flag>
+ <flag name="enlightenment_modules_notification">notification-daemon alternative. Popup if an event occur</flag>
+ <flag name="enlightenment_modules_pager">Gadget to allow you to visualize your virtual desktops and the windows they contain</flag>
+ <flag name="enlightenment_modules_quickaccess">Enlightenment Quickaccess Launcher</flag>
+ <flag name="enlightenment_modules_shot">Simple screenshot+save/upload module</flag>
+ <flag name="enlightenment_modules_start">Enlightenment's "Start" button equivalent</flag>
+ <flag name="enlightenment_modules_syscon">This module provides a unified popup dialog for all the system actions in Enlightenment</flag>
+ <flag name="enlightenment_modules_systray">system tray that hold applications icons like Skype, Pidgin, Kopete and others</flag>
+ <flag name="enlightenment_modules_tasks">Gadget to allow you to switch tasks</flag>
+ <flag name="enlightenment_modules_teamwork">Enable teamwork module</flag>
+ <flag name="enlightenment_modules_temperature">Temperature monitor</flag>
+ <flag name="enlightenment_modules_tiling">Positions/resizes your windows tilingly</flag>
+ <flag name="enlightenment_modules_winlist">A module to show the list of client applications presently running</flag>
+ <flag name="enlightenment_modules_wizard">First Run Wizard</flag>
+ <flag name="enlightenment_modules_wl-desktop-shell">Enlightenment Wayland Desktop Shell</flag>
+ <flag name="enlightenment_modules_wl-screenshot">Enlightenment Wayland Screenshot module</flag>
+ <flag name="enlightenment_modules_xkbswitch">Keyboard layout configuration and switcher</flag>
+ <flag name="enlightenment_modules_conf-applications">Allows configuration of Ibar, Restart, and Startup applications</flag>
+ <flag name="enlightenment_modules_conf-comp">Configure default dialog properties</flag>
+ <flag name="enlightenment_modules_conf-dialogs">Configure default dialog properties</flag>
+ <flag name="enlightenment_modules_conf-display">Used to configure your screen</flag>
+ <flag name="enlightenment_modules_conf-edgebindings">Configure your edge bindings here</flag>
+ <flag name="enlightenment_modules_conf-interaction">Configure Mouse and Touch input</flag>
+ <flag name="enlightenment_modules_conf-intl">Used to select a default language</flag>
+ <flag name="enlightenment_modules_conf-keybindings">Key, Mouse and Button control settings</flag>
+ <flag name="enlightenment_modules_conf-menus">Configures menu behavior</flag>
+ <flag name="enlightenment_modules_conf-paths">Specifies the Enlightenment search paths and default directories</flag>
+ <flag name="enlightenment_modules_conf-performance">Used to configure certain performance related items as frame rates and cache settings</flag>
+ <flag name="enlightenment_modules_conf-randr">Used to configure your screen's resolution</flag>
+ <flag name="enlightenment_modules_conf-shelves">Shelf configuration dialog</flag>
+ <flag name="enlightenment_modules_conf-theme">Used to configure your theme preferences</flag>
+ <flag name="enlightenment_modules_conf-wallpaper2">Used to configure your theme preferences</flag>
+ <flag name="enlightenment_modules_conf-window-manipulation">Configures window raise, resistance, and maximize policies</flag>
+ <flag name="enlightenment_modules_conf-window-remembers">Delete existing window remembers</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">enlightenment</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/x11-wm/evilwm/Manifest b/x11-wm/evilwm/Manifest
new file mode 100644
index 000000000000..06c560dc1fc7
--- /dev/null
+++ b/x11-wm/evilwm/Manifest
@@ -0,0 +1,2 @@
+DIST evilwm-1.0.1.tar.gz 31468 SHA256 79640a68f6dd7e67a1767767aba486e192d7663ccb2588154d2419b47b9ec457
+DIST evilwm-1.1.0.tar.gz 40309 SHA256 cdc763c875b64ee3734f3cb764249e91ec659f550177ec1bb564304260ef0c75
diff --git a/x11-wm/evilwm/evilwm-1.0.1.ebuild b/x11-wm/evilwm/evilwm-1.0.1.ebuild
new file mode 100644
index 000000000000..0353800e1eb8
--- /dev/null
+++ b/x11-wm/evilwm/evilwm-1.0.1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+inherit toolchain-funcs multilib
+
+DESCRIPTION="A minimalist, no frills window manager for X"
+SRC_URI="http://www.6809.org.uk/evilwm/${P}.tar.gz"
+HOMEPAGE="http://evilwm.sourceforge.net"
+
+LICENSE="MIT 9wm"
+SLOT="0"
+KEYWORDS="alpha amd64 ppc sparc x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~sparc64-solaris"
+IUSE=""
+
+RDEPEND="x11-libs/libXext
+ x11-libs/libXrandr"
+
+DEPEND="${RDEPEND}
+ x11-proto/xextproto
+ x11-proto/xproto"
+
+src_prepare() {
+ sed -i 's/^#define DEF_FONT.*/#define DEF_FONT "fixed"/' evilwm.h \
+ || die "sed font failed"
+ sed -i -e '/^CFLAGS/s/ -Os/ /' \
+ -e 's/install -s /install /' Makefile || die "sed opt failed"
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" prefix="\$(DESTDIR)/${EPREFIX}/usr" XROOT="${EPREFIX}/usr" LDPATH="-L${EPREFIX}/usr/$(get_libdir)" || die
+}
+
+src_install () {
+ make DESTDIR="${D}" prefix="\$(DESTDIR)/${EPREFIX}/usr" install || die "make install failed"
+
+ dodoc ChangeLog README TODO || die "dodoc failed"
+
+ echo -e "#!${EPREFIX}/bin/sh\nexec \"${EPREFIX}/usr/bin/${PN}\"" > "${T}/${PN}"
+ exeinto /etc/X11/Sessions
+ doexe "${T}/${PN}" || die "/etc/X11/Sessions failed"
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/${PN}.desktop" || die "${PN}.desktop failed."
+}
diff --git a/x11-wm/evilwm/evilwm-1.1.0.ebuild b/x11-wm/evilwm/evilwm-1.1.0.ebuild
new file mode 100644
index 000000000000..5b6afabb818e
--- /dev/null
+++ b/x11-wm/evilwm/evilwm-1.1.0.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+inherit toolchain-funcs
+
+MY_P=${P/_}
+
+DESCRIPTION="A minimalist, no frills window manager for X"
+HOMEPAGE="http://www.6809.org.uk/evilwm/"
+SRC_URI="http://www.6809.org.uk/${PN}/${MY_P}.tar.gz"
+
+LICENSE="MIT 9wm"
+SLOT="0"
+KEYWORDS=""
+#KEYWORDS="~alpha ~amd64 ~ppc ~sparc ~x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~sparc64-solaris"
+IUSE=""
+
+RDEPEND="x11-libs/libX11
+ x11-libs/libXrandr
+ x11-libs/libXext"
+DEPEND="${RDEPEND}
+ x11-proto/xproto"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ sed -e 's/^#define DEF_FONT.*/#define DEF_FONT "fixed"/' \
+ -i evilwm.h || die
+
+ sed -e '/Encoding/d' \
+ -i ${PN}.desktop || die
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" prefix="${EPREFIX}/usr" INSTALL_STRIP="" install || die
+ dodoc ChangeLog README TODO || die
+
+ echo -e "#!${EPREFIX}/bin/sh\nexec \"${EPREFIX}/usr/bin/${PN}\"" > "${T}"/${PN}
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/${PN} || die
+}
diff --git a/x11-wm/evilwm/files/evilwm.desktop b/x11-wm/evilwm/files/evilwm.desktop
new file mode 100644
index 000000000000..419d1ec1110e
--- /dev/null
+++ b/x11-wm/evilwm/files/evilwm.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=evilwm
+Comment=A minimalist window manager
+Exec=evilwm
+TryExec=evilwm
+# no icon yet, only the top three are currently used
+Icon=
+Type=Application
diff --git a/x11-wm/evilwm/metadata.xml b/x11-wm/evilwm/metadata.xml
new file mode 100644
index 000000000000..14ec3954f6b7
--- /dev/null
+++ b/x11-wm/evilwm/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>maintainer-needed@gentoo.org</email></maintainer>
+ <longdescription>
+ A minimalist window manager for the X Window System. It maximises screen
+ real estate and provides good keyboard control. It is currently based on
+ aewm.
+ </longdescription>
+</pkgmetadata>
diff --git a/x11-wm/fluxbox/Manifest b/x11-wm/fluxbox/Manifest
new file mode 100644
index 000000000000..b03e5151ae87
--- /dev/null
+++ b/x11-wm/fluxbox/Manifest
@@ -0,0 +1,4 @@
+DIST fluxbox-1.3.2.tar.bz2 787400 SHA256 e8aaf46c043eb6186383c6dde8bf98dbd62305b202ad4d8ebb39508b1b710167 SHA512 2624c337e85b98e39398319170cbf57f8ab031539844e62f2f61aefd5c2e307b8390261b9658073bcf557f7f006c9df95c72a4420f12fa7122742b4623a17d49 WHIRLPOOL 6f6fae12c265f2cf1e700a257fa89f291adea9838714f8bc861c2f37f3d036caa16e269e8b5ff18d687bf6f77a4f1661df864e9ec98f3d2d14e3d3186d2ebdde
+DIST fluxbox-1.3.5.tar.lzma 694672 SHA256 f4faf1fcb995dbe85d272e511e388de347ff07b69e9f8c5af0248cf330ee2a07 SHA512 55d1689660b9240851be55183f665efff281f8f344474ddd1bee089635cb34e343cca85743900675c21579cf9e58c7bd756932a30c2ff4e6384b500d7c4bdcd8 WHIRLPOOL 6f379f9f224478556c53e2585f76c28f29c20b1fce5ab24ed0d06a813e51ddb1e0eaea7658ec1fa5979b951613542dd47dad4fd7af17bbdf0530653b8583b18d
+DIST fluxbox-1.3.6.tar.xz 793144 SHA256 fa09ad8d30841021a1e5147efa944eb509201fa3619da5b6608d94cbbf55bf33 SHA512 66257f00b3f92cb3b87990610e0b5d6c7191c75997bbcba6744d581ccec36da2d1724767575dcde81be4fdbf39e2e25c8530013ee52a28d4775230fdf04b2f9a WHIRLPOOL 198a3972a81287a1fa6346a708bf461cd9b5262adb7cb17504077e9d154c582947b05f7508d151363f36f78d822fa9fbf9797ee4cc6f7f76a8cc5b7a69db4c52
+DIST fluxbox-1.3.7.tar.xz 786492 SHA256 fc8c75fe94c54ed5a5dd3fd4a752109f8949d6df67a48e5b11a261403c382ec0 SHA512 ab8adb8b5a5e396b6df814c93d7fe5aca3eaaa347ca45c1572ad7da0185dbe1e8981190af9b814112f9831b560e31ba0b7dec7e6af5e3e3e3d9d20f2bd463e01 WHIRLPOOL ebf8352dfd6a92ba589c0224a7b50a7a6b1692ca760b551959885e2bcaf59a82657598288ac14ed947763891d939f9c227a8a6fde3a6bd0684b7d9478026a727
diff --git a/x11-wm/fluxbox/files/1.3.5-generate_menu-printf-fix.patch b/x11-wm/fluxbox/files/1.3.5-generate_menu-printf-fix.patch
new file mode 100644
index 000000000000..f9246f159076
--- /dev/null
+++ b/x11-wm/fluxbox/files/1.3.5-generate_menu-printf-fix.patch
@@ -0,0 +1,22 @@
+https://github.com/fluxbox/fluxbox/commit/fc245408d6975d0813cd4440e7089d987b54d42e
+diff --git a/util/fluxbox-generate_menu.in b/util/fluxbox-generate_menu.in
+index 525315c..33b0153 100755
+--- a/util/fluxbox-generate_menu.in
++++ b/util/fluxbox-generate_menu.in
+@@ -330,13 +330,13 @@ searchForIcon(){
+ # echo "^.${entry_exec}.[[:space:]]*<.*/${icon_base}\....>"
+ if [ -f "$entry_icon" ]; then
+ # if icon exists and entry does not already exists, add it
+- if ! grep -q -m 1 "^.${entry_exec}.[[:space:]]*<.*/${icon_base}\....>" $ICONMAPPING 2> /dev/null; then
+- printf "\"${entry_exec}\" \t <${entry_icon}>\n" >> $ICONMAPPING
++ if ! grep -q -m 1 "^.${execname}.[[:space:]]*<.*/${icon_base}\....>" $ICONMAPPING 2> /dev/null; then
++ printf "\"${execname}\" \t <${entry_icon}>\n" >> $ICONMAPPING
+ else
+- : echo "# mapping already exists for ${entry_exec}" >> $ICONMAPPING
++ : echo "# mapping already exists for ${execname}" >> $ICONMAPPING
+ fi
+ else
+- echo "# No icon file found for $entry_exec" >> $ICONMAPPING
++ echo "# No icon file found for $execname" >> $ICONMAPPING
+ fi
+ }
diff --git a/x11-wm/fluxbox/files/fix-hidden-toolbar.patch b/x11-wm/fluxbox/files/fix-hidden-toolbar.patch
new file mode 100644
index 000000000000..e5e5a552c392
--- /dev/null
+++ b/x11-wm/fluxbox/files/fix-hidden-toolbar.patch
@@ -0,0 +1,92 @@
+--- a/src/Toolbar.cc
++++ b/src/Toolbar.cc
+@@ -80,18 +80,18 @@ const struct {
+ unsigned int shape;
+ } _values[] = {
+ { /* unused */ },
+- { Toolbar::TOPLEFT, "TopLeft", FbTk::ROT0, FbTk::Shape::BOTTOMRIGHT | FbTk::Shape::BOTTOMLEFT},
+- { Toolbar::TOPCENTER, "TopCenter", FbTk::ROT0, FbTk::Shape::TOPRIGHT | FbTk::Shape::TOPLEFT},
+- { Toolbar::TOPRIGHT, "TopRight", FbTk::ROT0, FbTk::Shape::BOTTOMRIGHT | FbTk::Shape::BOTTOMLEFT},
+- { Toolbar::BOTTOMLEFT, "BottomLeft", FbTk::ROT0, FbTk::Shape::TOPRIGHT | FbTk::Shape::TOPLEFT},
+- { Toolbar::BOTTOMCENTER, "BottomCenter", FbTk::ROT0, FbTk::Shape::TOPRIGHT | FbTk::Shape::TOPLEFT},
+- { Toolbar::BOTTOMRIGHT, "BottomRight", FbTk::ROT0, FbTk::Shape::TOPRIGHT | FbTk::Shape::TOPLEFT},
+- { Toolbar::LEFTBOTTOM, "LeftBottom", FbTk::ROT270, FbTk::Shape::TOPRIGHT | FbTk::Shape::BOTTOMRIGHT},
+- { Toolbar::LEFTCENTER, "LeftCenter", FbTk::ROT270, FbTk::Shape::TOPRIGHT | FbTk::Shape::BOTTOMRIGHT},
+- { Toolbar::LEFTTOP, "LeftTop", FbTk::ROT270, FbTk::Shape::TOPRIGHT | FbTk::Shape::BOTTOMRIGHT},
+- { Toolbar::RIGHTBOTTOM, "RightBottom", FbTk::ROT90, FbTk::Shape::TOPLEFT | FbTk::Shape::BOTTOMLEFT},
+- { Toolbar::RIGHTCENTER, "RightCenter", FbTk::ROT90, FbTk::Shape::TOPLEFT | FbTk::Shape::BOTTOMLEFT},
+- { Toolbar::RIGHTTOP, "RightTop", FbTk::ROT90, FbTk::Shape::TOPLEFT | FbTk::Shape::BOTTOMLEFT},
++ { Toolbar::TOPLEFT, "TopLeft", FbTk::ROT0, FbTk::Shape::BOTTOMRIGHT },
++ { Toolbar::TOPCENTER, "TopCenter", FbTk::ROT0, FbTk::Shape::BOTTOMRIGHT | FbTk::Shape::BOTTOMLEFT },
++ { Toolbar::TOPRIGHT, "TopRight", FbTk::ROT0, FbTk::Shape::BOTTOMLEFT },
++ { Toolbar::BOTTOMLEFT, "BottomLeft", FbTk::ROT0, FbTk::Shape::TOPRIGHT },
++ { Toolbar::BOTTOMCENTER, "BottomCenter", FbTk::ROT0, FbTk::Shape::TOPRIGHT | FbTk::Shape::TOPLEFT },
++ { Toolbar::BOTTOMRIGHT, "BottomRight", FbTk::ROT0, FbTk::Shape::TOPLEFT },
++ { Toolbar::LEFTBOTTOM, "LeftBottom", FbTk::ROT270, FbTk::Shape::TOPRIGHT },
++ { Toolbar::LEFTCENTER, "LeftCenter", FbTk::ROT270, FbTk::Shape::TOPRIGHT | FbTk::Shape::BOTTOMRIGHT },
++ { Toolbar::LEFTTOP, "LeftTop", FbTk::ROT270, FbTk::Shape::BOTTOMRIGHT },
++ { Toolbar::RIGHTBOTTOM, "RightBottom", FbTk::ROT90, FbTk::Shape::TOPLEFT },
++ { Toolbar::RIGHTCENTER, "RightCenter", FbTk::ROT90, FbTk::Shape::TOPLEFT | FbTk::Shape::BOTTOMLEFT },
++ { Toolbar::RIGHTTOP, "RightTop", FbTk::ROT90, FbTk::Shape::BOTTOMLEFT },
+ };
+
+ }
+@@ -648,24 +648,29 @@ void Toolbar::setPlacement(Toolbar::Placement where) {
+ break;
+ case TOPCENTER:
+ frame.x += (head_w - static_cast<int>(frame.width))/2 - bw;
++ frame.x_hidden = frame.x;
+ frame.y_hidden += pixel - bw - static_cast<int>(frame.height);
+ break;
+ case TOPRIGHT:
+ frame.x += head_w - static_cast<int>(frame.width) - bw*2;
++ frame.x_hidden = frame.x;
+ frame.y_hidden += pixel - bw - static_cast<int>(frame.height);
+ break;
+ case BOTTOMRIGHT:
+ frame.x += head_w - static_cast<int>(frame.width) - bw*2;
+ frame.y += head_h - static_cast<int>(frame.height) - bw*2;
++ frame.x_hidden = frame.x;
+ frame.y_hidden += head_h - bw - pixel;
+ break;
+ case BOTTOMCENTER: // default is BOTTOMCENTER
+ frame.x += (head_w - static_cast<int>(frame.width))/2 - bw;
+ frame.y += head_h - static_cast<int>(frame.height) - bw*2;
++ frame.x_hidden = frame.x;
+ frame.y_hidden += head_h - bw - pixel;
+ break;
+ case LEFTCENTER:
+ frame.y += (head_h - static_cast<int>(frame.height))/2 - bw;
++ frame.y_hidden = frame.y;
+ frame.x_hidden += pixel - static_cast<int>(frame.width) - bw;
+ break;
+ case LEFTTOP:
+@@ -673,21 +678,24 @@ void Toolbar::setPlacement(Toolbar::Placement where) {
+ break;
+ case LEFTBOTTOM:
+ frame.y = head_h - static_cast<int>(frame.height) - bw*2;
++ frame.y_hidden = frame.y;
+ frame.x_hidden += pixel - static_cast<int>(frame.width) - bw;
+ break;
+ case RIGHTCENTER:
+ frame.x += head_w - static_cast<int>(frame.width) - bw*2;
+- frame.y += (head_h - static_cast<int>(frame.height))/2 * bw;
+- frame.x_hidden += static_cast<int>(frame.width) + bw - pixel;
++ frame.y += (head_h - static_cast<int>(frame.height))/2 - bw;
++ frame.x_hidden += head_w - bw - pixel;
++ frame.y_hidden = frame.y;
+ break;
+ case RIGHTTOP:
+ frame.x += head_w - static_cast<int>(frame.width) - bw*2;
+- frame.x_hidden += static_cast<int>(frame.width) + bw - pixel;
++ frame.x_hidden += head_w - bw - pixel;
+ break;
+ case RIGHTBOTTOM:
+ frame.x += head_w - static_cast<int>(frame.width) - bw*2;
+ frame.y += head_h - static_cast<int>(frame.height) - bw*2;
+- frame.x_hidden += static_cast<int>(frame.width) + bw - pixel;
++ frame.x_hidden += head_w - bw - pixel;
++ frame.y_hidden = frame.y;
+ break;
+ }
+
diff --git a/x11-wm/fluxbox/files/fluxbox.desktop b/x11-wm/fluxbox/files/fluxbox.desktop
new file mode 100644
index 000000000000..975d121c877a
--- /dev/null
+++ b/x11-wm/fluxbox/files/fluxbox.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Fluxbox
+Comment=This session logs you into Fluxbox
+Exec=startfluxbox
+TryExec=startfluxbox
+# no icon yet, only the top three are currently used
+Icon=
+Type=Application
diff --git a/x11-wm/fluxbox/files/fluxbox.xsession b/x11-wm/fluxbox/files/fluxbox.xsession
new file mode 100644
index 000000000000..0fb9dcd6c77c
--- /dev/null
+++ b/x11-wm/fluxbox/files/fluxbox.xsession
@@ -0,0 +1,90 @@
+#!/bin/sh
+# Fluxbox Xsession starter, based on Xsession shipped by x11-apps/xinit-1.0.5-r1
+
+# redirect errors to a file in user's home directory if we can
+for errfile in "$HOME/.fluxbox-errors" "${TMPDIR-/tmp}/fluxbox-$USER" "/tmp/fluxbox-$USER"
+do
+ if ( cp /dev/null "$errfile" 2> /dev/null )
+ then
+ chmod 600 "$errfile"
+ exec > "$errfile" 2>&1
+ break
+ fi
+done
+
+userresources=$HOME/.Xresources
+usermodmap=$HOME/.Xmodmap
+userxkbmap=$HOME/.Xkbmap
+
+sysresources=/etc/X11/Xresources
+sysmodmap=/etc/X11/Xmodmap
+sysxkbmap=/etc/X11/Xkbmap
+
+rh6sysresources=/etc/X11/xinit/Xresources
+rh6sysmodmap=/etc/X11/xinit/Xmodmap
+
+
+# merge in defaults
+if [ -f "$rh6sysresources" ]; then
+ xrdb -merge "$rh6sysresources"
+fi
+
+if [ -f "$sysresources" ]; then
+ xrdb -merge "$sysresources"
+fi
+
+if [ -f "$userresources" ]; then
+ xrdb -merge "$userresources"
+fi
+
+# merge in keymaps
+if [ -f "$sysxkbmap" ]; then
+ setxkbmap `cat "$sysxkbmap"`
+ XKB_IN_USE=yes
+fi
+
+if [ -f "$userxkbmap" ]; then
+ setxkbmap `cat "$userxkbmap"`
+ XKB_IN_USE=yes
+fi
+
+#
+# Eeek, this seems like too much magic here
+#
+if [ -z "$XKB_IN_USE" -a ! -L /etc/X11/X ]; then
+ if grep '^exec.*/Xsun' /etc/X11/X > /dev/null 2>&1 && [ -f /etc/X11/XF86Config ]; then
+ xkbsymbols=`sed -n -e 's/^[ ]*XkbSymbols[ ]*"\(.*\)".*$/\1/p' /etc/X11/XF86Config /etc/X11/xorg.conf`
+ if [ -n "$xkbsymbols" ]; then
+ setxkbmap -symbols "$xkbsymbols"
+ XKB_IN_USE=yes
+ fi
+ fi
+fi
+
+# xkb and xmodmap don't play nice together
+if [ -z "$XKB_IN_USE" ]; then
+ if [ -f "$rh6sysmodmap" ]; then
+ xmodmap "$rh6sysmodmap"
+ fi
+
+ if [ -f "$sysmodmap" ]; then
+ xmodmap "$sysmodmap"
+ fi
+
+ if [ -f "$usermodmap" ]; then
+ xmodmap "$usermodmap"
+ fi
+fi
+
+unset XKB_IN_USE
+
+# run all system xinitrc shell scripts.
+if [ -d /etc/X11/xinit/xinitrc.d ]; then
+ for i in /etc/X11/xinit/xinitrc.d/* ; do
+ if [ -x "$i" ]; then
+ . "$i"
+ fi
+ done
+fi
+
+exec /usr/bin/startfluxbox
diff --git a/x11-wm/fluxbox/files/gentoo_style_location-1.1.x.patch b/x11-wm/fluxbox/files/gentoo_style_location-1.1.x.patch
new file mode 100644
index 000000000000..dfa4f2eab48f
--- /dev/null
+++ b/x11-wm/fluxbox/files/gentoo_style_location-1.1.x.patch
@@ -0,0 +1,19 @@
+diff --git a/util/fluxbox-generate_menu.in b/util/fluxbox-generate_menu.in
+index aca8b08..b229046 100755
+--- a/util/fluxbox-generate_menu.in
++++ b/util/fluxbox-generate_menu.in
+@@ -1794,12 +1794,8 @@ fi
+ append_submenu "${FBSETTINGSMENU}"
+ append "[config] (${CONFIGUREMENU})"
+
+- append_menu "[submenu] (${SYSTEMSTYLES}) {${STYLEMENUTITLE}}"
+- append "[stylesdir] (${PREFIX}/share/fluxbox/styles)"
+- append_menu_end
+-
+- append_menu "[submenu] (${USERSTYLES}) {${STYLEMENUTITLE}}"
+- append "[stylesdir] (~/.@pkgprefix@fluxbox@pkgsuffix@/styles)"
++ append_submenu "Styles"
++ append "[include] (@GENTOO_PORTAGE_EPREFIX@/usr/share/fluxbox/menu.d/styles/)"
+ append_menu_end
+
+ # Backgroundmenu
diff --git a/x11-wm/fluxbox/files/osx-has-otool.patch b/x11-wm/fluxbox/files/osx-has-otool.patch
new file mode 100644
index 000000000000..7671dd83647c
--- /dev/null
+++ b/x11-wm/fluxbox/files/osx-has-otool.patch
@@ -0,0 +1,12 @@
+--- util/fbsetbg
++++ util/fbsetbg
+@@ -356,7 +356,8 @@
+ if [ ! "$wpsetter" = Esetroot ]; then
+ WPSETTER=$wpsetter
+ break
+- elif ldd `which Esetroot`|grep libImlib 2>&1 > /dev/null; then
++ elif ldd `which Esetroot`|grep libImlib 2>&1 > /dev/null || \
++ otool -L `which Esetroot`|grep libImlib 2>&1 > /dev/null; then
+ WPSETTER=$wpsetter
+ break
+ else
diff --git a/x11-wm/fluxbox/files/styles-menu-commonbox b/x11-wm/fluxbox/files/styles-menu-commonbox
new file mode 100644
index 000000000000..742e587e4f48
--- /dev/null
+++ b/x11-wm/fluxbox/files/styles-menu-commonbox
@@ -0,0 +1,5 @@
+[begin] (Legacy Commonbox Styles)
+[submenu] (Legacy Commonbox Styles)
+ [stylesdir] (/usr/share/commonbox/styles)
+[end]
+[end]
diff --git a/x11-wm/fluxbox/files/styles-menu-fluxbox b/x11-wm/fluxbox/files/styles-menu-fluxbox
new file mode 100644
index 000000000000..d2e0d580339f
--- /dev/null
+++ b/x11-wm/fluxbox/files/styles-menu-fluxbox
@@ -0,0 +1,5 @@
+[begin] (Fluxbox Core Styles)
+[submenu] (Fluxbox Core Styles)
+ [stylesdir] (/usr/share/fluxbox/styles)
+[end]
+[end]
diff --git a/x11-wm/fluxbox/files/styles-menu-user b/x11-wm/fluxbox/files/styles-menu-user
new file mode 100644
index 000000000000..3d011d27ed23
--- /dev/null
+++ b/x11-wm/fluxbox/files/styles-menu-user
@@ -0,0 +1,5 @@
+[begin] (User Styles)
+[submenu] (User Styles)
+ [stylesdir] (~/.fluxbox/styles)
+[end]
+[end]
diff --git a/x11-wm/fluxbox/fluxbox-1.3.2.ebuild b/x11-wm/fluxbox/fluxbox-1.3.2.ebuild
new file mode 100644
index 000000000000..15c3db6f0fb4
--- /dev/null
+++ b/x11-wm/fluxbox/fluxbox-1.3.2.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit eutils flag-o-matic toolchain-funcs prefix
+
+IUSE="nls xinerama bidi +truetype +imlib +slit +toolbar vim-syntax"
+
+DESCRIPTION="Fluxbox is an X11 window manager featuring tabs and an iconbar"
+
+SRC_URI="mirror://sourceforge/fluxbox/${P}.tar.bz2"
+HOMEPAGE="http://www.fluxbox.org"
+
+RDEPEND="x11-libs/libXpm
+ x11-libs/libXrandr
+ x11-libs/libXext
+ x11-libs/libXft
+ x11-libs/libXrender
+ || ( x11-misc/gxmessage x11-apps/xmessage )
+ xinerama? ( x11-libs/libXinerama )
+ truetype? ( media-libs/freetype )
+ bidi? ( >=dev-libs/fribidi-0.19.2 )
+ imlib? ( >=media-libs/imlib2-1.2.0[X] )
+ vim-syntax? ( app-vim/fluxbox-syntax )
+ !!<x11-themes/fluxbox-styles-fluxmod-20040809-r1
+ !!<=x11-misc/fluxconf-0.9.9
+ !!<=x11-misc/fbdesk-1.2.1"
+DEPEND="bidi? ( virtual/pkgconfig )
+ nls? ( sys-devel/gettext )
+ x11-proto/xextproto
+ ${RDEPEND}"
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux"
+
+src_prepare() {
+ # We need to be able to include directories rather than just plain
+ # files in menu [include] items. This patch will allow us to do clever
+ # things with style ebuilds.
+ epatch "${FILESDIR}/gentoo_style_location-1.1.x.patch"
+ eprefixify util/fluxbox-generate_menu.in
+
+ epatch "${FILESDIR}"/osx-has-otool.patch
+
+ # Add in the Gentoo -r number to fluxbox -version output.
+ if [[ "${PR}" == "r0" ]] ; then
+ suffix="gentoo"
+ else
+ suffix="gentoo-${PR}"
+ fi
+ sed -i \
+ -e "s~\(__fluxbox_version .@VERSION@\)~\1-${suffix}~" \
+ version.h.in || die "version sed failed"
+}
+
+src_configure() {
+ use bidi && append-cppflags "$($(tc-getPKG_CONFIG) --cflags fribidi)"
+
+ econf \
+ $(use_enable nls) \
+ $(use_enable xinerama) \
+ $(use_enable truetype xft) \
+ $(use_enable imlib imlib2) \
+ $(use_enable bidi fribidi ) \
+ $(use_enable slit ) \
+ $(use_enable toolbar ) \
+ --sysconfdir="${EPREFIX}"/etc/X11/${PN} \
+ --with-style="${EPREFIX}"/usr/share/fluxbox/styles/Emerge \
+ ${myconf}
+}
+
+src_compile() {
+ default
+
+ ebegin "Creating a menu file (may take a while)"
+ mkdir -p "${T}/home/.fluxbox" || die "mkdir home failed"
+ MENUFILENAME="${S}/data/menu" MENUTITLE="Fluxbox ${PV}" \
+ CHECKINIT="no. go away." HOME="${T}/home" \
+ "${S}/util/fluxbox-generate_menu" -is -ds \
+ || die "menu generation failed"
+ eend $?
+}
+
+src_install() {
+ dodir /usr/share/fluxbox
+ emake DESTDIR="${D}" STRIP="" install
+ dodoc README* AUTHORS TODO* ChangeLog NEWS
+
+ dodir /usr/share/xsessions
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/${PN}.desktop"
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}/${PN}.xsession" fluxbox
+
+ dodir /usr/share/fluxbox/menu.d
+
+ # Styles menu framework
+ dodir /usr/share/fluxbox/menu.d/styles
+ insinto /usr/share/fluxbox/menu.d/styles
+ doins "${FILESDIR}/styles-menu-fluxbox"
+ doins "${FILESDIR}/styles-menu-commonbox"
+ doins "${FILESDIR}/styles-menu-user"
+}
diff --git a/x11-wm/fluxbox/fluxbox-1.3.5-r1.ebuild b/x11-wm/fluxbox/fluxbox-1.3.5-r1.ebuild
new file mode 100644
index 000000000000..537c6b189c8d
--- /dev/null
+++ b/x11-wm/fluxbox/fluxbox-1.3.5-r1.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic toolchain-funcs prefix
+
+IUSE="nls xinerama bidi +truetype +imlib +slit +toolbar vim-syntax"
+
+DESCRIPTION="Fluxbox is an X11 window manager featuring tabs and an iconbar"
+
+SRC_URI="mirror://sourceforge/fluxbox/${P}.tar.lzma"
+HOMEPAGE="http://www.fluxbox.org"
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ !!<=x11-misc/fbdesk-1.2.1
+ !!<=x11-misc/fluxconf-0.9.9
+ !!<x11-themes/fluxbox-styles-fluxmod-20040809-r1
+ bidi? ( >=dev-libs/fribidi-0.19.2 )
+ imlib? ( >=media-libs/imlib2-1.2.0[X] )
+ truetype? ( media-libs/freetype )
+ vim-syntax? ( app-vim/fluxbox-syntax )
+ x11-libs/libXext
+ x11-libs/libXft
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ xinerama? ( x11-libs/libXinerama )
+ || ( x11-misc/gxmessage x11-apps/xmessage )
+"
+DEPEND="
+ ${RDEPEND}
+ bidi? ( virtual/pkgconfig )
+ nls? ( sys-devel/gettext )
+ x11-proto/xextproto
+"
+
+src_prepare() {
+ # We need to be able to include directories rather than just plain
+ # files in menu [include] items. This patch will allow us to do clever
+ # things with style ebuilds.
+ epatch "${FILESDIR}/gentoo_style_location-1.1.x.patch"
+ # Fix the semantic issue of icon paths, bug #536370
+ epatch "${FILESDIR}"/${PV}-generate_menu-printf-fix.patch
+
+ eprefixify util/fluxbox-generate_menu.in
+
+ epatch "${FILESDIR}"/osx-has-otool.patch
+
+ # Add in the Gentoo -r number to fluxbox -version output.
+ if [[ "${PR}" == "r0" ]] ; then
+ suffix="gentoo"
+ else
+ suffix="gentoo-${PR}"
+ fi
+ sed -i \
+ -e "s~\(__fluxbox_version .@VERSION@\)~\1-${suffix}~" \
+ version.h.in || die "version sed failed"
+}
+
+src_configure() {
+ use bidi && append-cppflags "$($(tc-getPKG_CONFIG) --cflags fribidi)"
+
+ econf ${myconf} \
+ $(use_enable bidi fribidi ) \
+ $(use_enable imlib imlib2) \
+ $(use_enable nls) \
+ $(use_enable slit ) \
+ $(use_enable toolbar ) \
+ $(use_enable toolbar systray ) \
+ $(use_enable truetype xft) \
+ $(use_enable xinerama) \
+ --sysconfdir="${EPREFIX}"/etc/X11/${PN} \
+ --with-style="${EPREFIX}"/usr/share/fluxbox/styles/Emerge
+}
+
+src_compile() {
+ default
+
+ ebegin "Creating a menu file (may take a while)"
+ mkdir -p "${T}/home/.fluxbox" || die "mkdir home failed"
+ # Call fluxbox-generate_menu through bash since it lacks +x
+ # chmod 744 may be an equal fix
+ MENUFILENAME="${S}/data/menu" MENUTITLE="Fluxbox ${PV}" \
+ CHECKINIT="no. go away." HOME="${T}/home" \
+ bash "${S}/util/fluxbox-generate_menu" -is -ds \
+ || die "menu generation failed"
+ eend $?
+}
+
+src_install() {
+ emake DESTDIR="${D}" STRIP="" install
+ dodoc README* AUTHORS TODO* ChangeLog NEWS
+
+ # Install the generated menu
+ insinto /usr/share/fluxbox
+ doins data/menu
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/${PN}.desktop
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}.xsession fluxbox
+
+ # Styles menu framework
+ insinto /usr/share/fluxbox/menu.d/styles
+ doins "${FILESDIR}"/styles-menu-fluxbox
+ doins "${FILESDIR}"/styles-menu-commonbox
+ doins "${FILESDIR}"/styles-menu-user
+}
diff --git a/x11-wm/fluxbox/fluxbox-1.3.5.ebuild b/x11-wm/fluxbox/fluxbox-1.3.5.ebuild
new file mode 100644
index 000000000000..7556e09ba474
--- /dev/null
+++ b/x11-wm/fluxbox/fluxbox-1.3.5.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic toolchain-funcs prefix
+
+IUSE="nls xinerama bidi +truetype +imlib +slit +toolbar vim-syntax"
+
+DESCRIPTION="Fluxbox is an X11 window manager featuring tabs and an iconbar"
+
+SRC_URI="mirror://sourceforge/fluxbox/${P}.tar.lzma"
+HOMEPAGE="http://www.fluxbox.org"
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ !!<=x11-misc/fbdesk-1.2.1
+ !!<=x11-misc/fluxconf-0.9.9
+ !!<x11-themes/fluxbox-styles-fluxmod-20040809-r1
+ bidi? ( >=dev-libs/fribidi-0.19.2 )
+ imlib? ( >=media-libs/imlib2-1.2.0[X] )
+ truetype? ( media-libs/freetype )
+ vim-syntax? ( app-vim/fluxbox-syntax )
+ x11-libs/libXext
+ x11-libs/libXft
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ xinerama? ( x11-libs/libXinerama )
+ || ( x11-misc/gxmessage x11-apps/xmessage )
+"
+DEPEND="
+ ${RDEPEND}
+ bidi? ( virtual/pkgconfig )
+ nls? ( sys-devel/gettext )
+ x11-proto/xextproto
+"
+
+src_prepare() {
+ # We need to be able to include directories rather than just plain
+ # files in menu [include] items. This patch will allow us to do clever
+ # things with style ebuilds.
+ epatch "${FILESDIR}/gentoo_style_location-1.1.x.patch"
+ eprefixify util/fluxbox-generate_menu.in
+
+ epatch "${FILESDIR}"/osx-has-otool.patch
+
+ # Add in the Gentoo -r number to fluxbox -version output.
+ if [[ "${PR}" == "r0" ]] ; then
+ suffix="gentoo"
+ else
+ suffix="gentoo-${PR}"
+ fi
+ sed -i \
+ -e "s~\(__fluxbox_version .@VERSION@\)~\1-${suffix}~" \
+ version.h.in || die "version sed failed"
+}
+
+src_configure() {
+ use bidi && append-cppflags "$($(tc-getPKG_CONFIG) --cflags fribidi)"
+
+ econf ${myconf} \
+ $(use_enable bidi fribidi ) \
+ $(use_enable imlib imlib2) \
+ $(use_enable nls) \
+ $(use_enable slit ) \
+ $(use_enable toolbar ) \
+ $(use_enable truetype xft) \
+ $(use_enable xinerama) \
+ --sysconfdir="${EPREFIX}"/etc/X11/${PN} \
+ --with-style="${EPREFIX}"/usr/share/fluxbox/styles/Emerge
+}
+
+src_compile() {
+ default
+
+ ebegin "Creating a menu file (may take a while)"
+ mkdir -p "${T}/home/.fluxbox" || die "mkdir home failed"
+ MENUFILENAME="${S}/data/menu" MENUTITLE="Fluxbox ${PV}" \
+ CHECKINIT="no. go away." HOME="${T}/home" \
+ "${S}/util/fluxbox-generate_menu" -is -ds \
+ || die "menu generation failed"
+ eend $?
+}
+
+src_install() {
+ dodir /usr/share/fluxbox
+ emake DESTDIR="${D}" STRIP="" install
+ dodoc README* AUTHORS TODO* ChangeLog NEWS
+
+ dodir /usr/share/xsessions
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/${PN}.desktop"
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}/${PN}.xsession" fluxbox
+
+ dodir /usr/share/fluxbox/menu.d
+
+ # Styles menu framework
+ dodir /usr/share/fluxbox/menu.d/styles
+ insinto /usr/share/fluxbox/menu.d/styles
+ doins "${FILESDIR}/styles-menu-fluxbox"
+ doins "${FILESDIR}/styles-menu-commonbox"
+ doins "${FILESDIR}/styles-menu-user"
+}
diff --git a/x11-wm/fluxbox/fluxbox-1.3.6-r1.ebuild b/x11-wm/fluxbox/fluxbox-1.3.6-r1.ebuild
new file mode 100644
index 000000000000..e3eeb59d6698
--- /dev/null
+++ b/x11-wm/fluxbox/fluxbox-1.3.6-r1.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic toolchain-funcs prefix
+
+IUSE="nls xinerama bidi +truetype +imlib +slit +toolbar vim-syntax"
+
+DESCRIPTION="Fluxbox is an X11 window manager featuring tabs and an iconbar"
+
+SRC_URI="mirror://sourceforge/fluxbox/${P}.tar.xz"
+HOMEPAGE="http://www.fluxbox.org"
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ !!<=x11-misc/fbdesk-1.2.1
+ !!<=x11-misc/fluxconf-0.9.9
+ !!<x11-themes/fluxbox-styles-fluxmod-20040809-r1
+ bidi? ( >=dev-libs/fribidi-0.19.2 )
+ imlib? ( >=media-libs/imlib2-1.2.0[X] )
+ truetype? ( media-libs/freetype )
+ vim-syntax? ( app-vim/fluxbox-syntax )
+ x11-libs/libXext
+ x11-libs/libXft
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ xinerama? ( x11-libs/libXinerama )
+ || ( x11-misc/gxmessage x11-apps/xmessage )
+"
+DEPEND="
+ ${RDEPEND}
+ bidi? ( virtual/pkgconfig )
+ nls? ( sys-devel/gettext )
+ x11-proto/xextproto
+"
+
+src_prepare() {
+ # We need to be able to include directories rather than just plain
+ # files in menu [include] items. This patch will allow us to do clever
+ # things with style ebuilds.
+ epatch "${FILESDIR}"/gentoo_style_location-1.1.x.patch
+ # Fix the semantic issue of icon paths, bug #536370
+ epatch "${FILESDIR}"/1.3.5-generate_menu-printf-fix.patch
+
+ eprefixify util/fluxbox-generate_menu.in
+
+ epatch "${FILESDIR}"/osx-has-otool.patch
+
+ # Add in the Gentoo -r number to fluxbox -version output.
+ if [[ "${PR}" == "r0" ]] ; then
+ suffix="gentoo"
+ else
+ suffix="gentoo-${PR}"
+ fi
+ sed -i \
+ -e "s~\(__fluxbox_version .@VERSION@\)~\1-${suffix}~" \
+ version.h.in || die "version sed failed"
+}
+
+src_configure() {
+ use bidi && append-cppflags "$($(tc-getPKG_CONFIG) --cflags fribidi)"
+
+ econf ${myconf} \
+ $(use_enable bidi fribidi ) \
+ $(use_enable imlib imlib2) \
+ $(use_enable nls) \
+ $(use_enable slit ) \
+ $(use_enable toolbar ) \
+ $(use_enable toolbar systray ) \
+ $(use_enable truetype xft) \
+ $(use_enable xinerama) \
+ --sysconfdir="${EPREFIX}"/etc/X11/${PN} \
+ --with-style="${EPREFIX}"/usr/share/fluxbox/styles/Emerge
+}
+
+src_compile() {
+ default
+
+ ebegin "Creating a menu file (may take a while)"
+ mkdir -p "${T}/home/.fluxbox" || die "mkdir home failed"
+ # Call fluxbox-generate_menu through bash since it lacks +x
+ # chmod 744 may be an equal fix
+ MENUFILENAME="${S}/data/menu" MENUTITLE="Fluxbox ${PV}" \
+ CHECKINIT="no. go away." HOME="${T}/home" \
+ bash "${S}/util/fluxbox-generate_menu" -is -ds \
+ || die "menu generation failed"
+ eend $?
+}
+
+src_install() {
+ emake DESTDIR="${D}" STRIP="" install
+ dodoc README* AUTHORS TODO* ChangeLog NEWS
+
+ # Install the generated menu
+ insinto /usr/share/fluxbox
+ doins data/menu
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/${PN}.desktop
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}.xsession fluxbox
+
+ # Styles menu framework
+ insinto /usr/share/fluxbox/menu.d/styles
+ doins "${FILESDIR}"/styles-menu-fluxbox
+ doins "${FILESDIR}"/styles-menu-commonbox
+ doins "${FILESDIR}"/styles-menu-user
+}
diff --git a/x11-wm/fluxbox/fluxbox-1.3.7-r1.ebuild b/x11-wm/fluxbox/fluxbox-1.3.7-r1.ebuild
new file mode 100644
index 000000000000..f1e704ff3c1c
--- /dev/null
+++ b/x11-wm/fluxbox/fluxbox-1.3.7-r1.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic toolchain-funcs prefix
+
+IUSE="nls xinerama bidi +truetype +imlib +slit +systray +toolbar vim-syntax"
+
+REQUIRED_USE="systray? ( toolbar )"
+
+DESCRIPTION="Fluxbox is an X11 window manager featuring tabs and an iconbar"
+
+SRC_URI="mirror://sourceforge/fluxbox/${P}.tar.xz"
+HOMEPAGE="http://www.fluxbox.org"
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ !!<=x11-misc/fbdesk-1.2.1
+ !!<=x11-misc/fluxconf-0.9.9
+ !!<x11-themes/fluxbox-styles-fluxmod-20040809-r1
+ bidi? ( >=dev-libs/fribidi-0.19.2 )
+ imlib? ( >=media-libs/imlib2-1.2.0[X] )
+ truetype? ( media-libs/freetype )
+ vim-syntax? ( app-vim/fluxbox-syntax )
+ x11-libs/libXext
+ x11-libs/libXft
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ xinerama? ( x11-libs/libXinerama )
+ || ( x11-misc/gxmessage x11-apps/xmessage )
+"
+DEPEND="
+ ${RDEPEND}
+ bidi? ( virtual/pkgconfig )
+ nls? ( sys-devel/gettext )
+ x11-proto/xextproto
+"
+
+src_prepare() {
+ # We need to be able to include directories rather than just plain
+ # files in menu [include] items. This patch will allow us to do clever
+ # things with style ebuilds.
+ epatch "${FILESDIR}"/gentoo_style_location-1.1.x.patch
+
+ eprefixify util/fluxbox-generate_menu.in
+
+ epatch "${FILESDIR}"/osx-has-otool.patch
+
+ # Add in the Gentoo -r number to fluxbox -version output.
+ if [[ "${PR}" == "r0" ]] ; then
+ suffix="gentoo"
+ else
+ suffix="gentoo-${PR}"
+ fi
+ sed -i \
+ -e "s~\(__fluxbox_version .@VERSION@\)~\1-${suffix}~" \
+ version.h.in || die "version sed failed"
+}
+
+src_configure() {
+ use bidi && append-cppflags "$($(tc-getPKG_CONFIG) --cflags fribidi)"
+
+ econf $(use_enable bidi fribidi ) \
+ $(use_enable imlib imlib2) \
+ $(use_enable nls) \
+ $(use_enable slit ) \
+ $(use_enable systray ) \
+ $(use_enable toolbar ) \
+ $(use_enable truetype xft) \
+ $(use_enable xinerama) \
+ --sysconfdir="${EPREFIX}"/etc/X11/${PN} \
+ --with-style="${EPREFIX}"/usr/share/fluxbox/styles/Emerge
+}
+
+src_compile() {
+ default
+
+ ebegin "Creating a menu file (may take a while)"
+ mkdir -p "${T}/home/.fluxbox" || die "mkdir home failed"
+ # Call fluxbox-generate_menu through bash since it lacks +x
+ # chmod 744 may be an equal fix
+ MENUFILENAME="${S}/data/menu" MENUTITLE="Fluxbox ${PV}" \
+ CHECKINIT="no. go away." HOME="${T}/home" \
+ bash "${S}/util/fluxbox-generate_menu" -is -ds \
+ || die "menu generation failed"
+ eend $?
+}
+
+src_install() {
+ emake DESTDIR="${D}" STRIP="" install
+ dodoc README* AUTHORS TODO* ChangeLog NEWS
+
+ # Install the generated menu
+ insinto /usr/share/fluxbox
+ doins data/menu
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/${PN}.desktop
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}.xsession fluxbox
+
+ # Styles menu framework
+ insinto /usr/share/fluxbox/menu.d/styles
+ doins "${FILESDIR}"/styles-menu-fluxbox
+ doins "${FILESDIR}"/styles-menu-commonbox
+ doins "${FILESDIR}"/styles-menu-user
+}
diff --git a/x11-wm/fluxbox/fluxbox-1.3.7-r2.ebuild b/x11-wm/fluxbox/fluxbox-1.3.7-r2.ebuild
new file mode 100644
index 000000000000..2eb6d081afd1
--- /dev/null
+++ b/x11-wm/fluxbox/fluxbox-1.3.7-r2.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic toolchain-funcs prefix
+
+IUSE="nls xinerama bidi +truetype +imlib +slit +systray +toolbar vim-syntax"
+
+REQUIRED_USE="systray? ( toolbar )"
+
+DESCRIPTION="Fluxbox is an X11 window manager featuring tabs and an iconbar"
+
+SRC_URI="mirror://sourceforge/fluxbox/${P}.tar.xz"
+HOMEPAGE="http://www.fluxbox.org"
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="alpha amd64 arm ~hppa ia64 ~mips ppc ~ppc64 sparc x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ !!<=x11-misc/fbdesk-1.2.1
+ !!<=x11-misc/fluxconf-0.9.9
+ !!<x11-themes/fluxbox-styles-fluxmod-20040809-r1
+ bidi? ( >=dev-libs/fribidi-0.19.2 )
+ imlib? ( >=media-libs/imlib2-1.2.0[X] )
+ truetype? ( media-libs/freetype )
+ vim-syntax? ( app-vim/fluxbox-syntax )
+ x11-libs/libXext
+ x11-libs/libXft
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ xinerama? ( x11-libs/libXinerama )
+ || ( x11-misc/gxmessage x11-apps/xmessage )
+"
+DEPEND="
+ ${RDEPEND}
+ bidi? ( virtual/pkgconfig )
+ nls? ( sys-devel/gettext )
+ x11-proto/xextproto
+"
+
+src_prepare() {
+ # We need to be able to include directories rather than just plain
+ # files in menu [include] items. This patch will allow us to do clever
+ # things with style ebuilds.
+ epatch "${FILESDIR}"/gentoo_style_location-1.1.x.patch
+
+ eprefixify util/fluxbox-generate_menu.in
+
+ epatch "${FILESDIR}"/osx-has-otool.patch
+
+ # Fix bug #551522; 1.3.8 will render this obsolete
+ epatch "${FILESDIR}"/fix-hidden-toolbar.patch
+
+ # Add in the Gentoo -r number to fluxbox -version output.
+ if [[ "${PR}" == "r0" ]] ; then
+ suffix="gentoo"
+ else
+ suffix="gentoo-${PR}"
+ fi
+ sed -i \
+ -e "s~\(__fluxbox_version .@VERSION@\)~\1-${suffix}~" \
+ version.h.in || die "version sed failed"
+}
+
+src_configure() {
+ use bidi && append-cppflags "$($(tc-getPKG_CONFIG) --cflags fribidi)"
+
+ econf $(use_enable bidi fribidi ) \
+ $(use_enable imlib imlib2) \
+ $(use_enable nls) \
+ $(use_enable slit ) \
+ $(use_enable systray ) \
+ $(use_enable toolbar ) \
+ $(use_enable truetype xft) \
+ $(use_enable xinerama) \
+ --sysconfdir="${EPREFIX}"/etc/X11/${PN} \
+ --with-style="${EPREFIX}"/usr/share/fluxbox/styles/Emerge
+}
+
+src_compile() {
+ default
+
+ ebegin "Creating a menu file (may take a while)"
+ mkdir -p "${T}/home/.fluxbox" || die "mkdir home failed"
+ # Call fluxbox-generate_menu through bash since it lacks +x
+ # chmod 744 may be an equal fix
+ MENUFILENAME="${S}/data/menu" MENUTITLE="Fluxbox ${PV}" \
+ CHECKINIT="no. go away." HOME="${T}/home" \
+ bash "${S}/util/fluxbox-generate_menu" -is -ds \
+ || die "menu generation failed"
+ eend $?
+}
+
+src_install() {
+ emake DESTDIR="${D}" STRIP="" install
+ dodoc README* AUTHORS TODO* ChangeLog NEWS
+
+ # Install the generated menu
+ insinto /usr/share/fluxbox
+ doins data/menu
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/${PN}.desktop
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}.xsession fluxbox
+
+ # Styles menu framework
+ insinto /usr/share/fluxbox/menu.d/styles
+ doins "${FILESDIR}"/styles-menu-fluxbox
+ doins "${FILESDIR}"/styles-menu-commonbox
+ doins "${FILESDIR}"/styles-menu-user
+}
diff --git a/x11-wm/fluxbox/fluxbox-1.3.7.ebuild b/x11-wm/fluxbox/fluxbox-1.3.7.ebuild
new file mode 100644
index 000000000000..0728129aa2c5
--- /dev/null
+++ b/x11-wm/fluxbox/fluxbox-1.3.7.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic toolchain-funcs prefix
+
+IUSE="nls xinerama bidi +truetype +imlib +slit +toolbar vim-syntax"
+
+DESCRIPTION="Fluxbox is an X11 window manager featuring tabs and an iconbar"
+
+SRC_URI="mirror://sourceforge/fluxbox/${P}.tar.xz"
+HOMEPAGE="http://www.fluxbox.org"
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ !!<=x11-misc/fbdesk-1.2.1
+ !!<=x11-misc/fluxconf-0.9.9
+ !!<x11-themes/fluxbox-styles-fluxmod-20040809-r1
+ bidi? ( >=dev-libs/fribidi-0.19.2 )
+ imlib? ( >=media-libs/imlib2-1.2.0[X] )
+ truetype? ( media-libs/freetype )
+ vim-syntax? ( app-vim/fluxbox-syntax )
+ x11-libs/libXext
+ x11-libs/libXft
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ xinerama? ( x11-libs/libXinerama )
+ || ( x11-misc/gxmessage x11-apps/xmessage )
+"
+DEPEND="
+ ${RDEPEND}
+ bidi? ( virtual/pkgconfig )
+ nls? ( sys-devel/gettext )
+ x11-proto/xextproto
+"
+
+src_prepare() {
+ # We need to be able to include directories rather than just plain
+ # files in menu [include] items. This patch will allow us to do clever
+ # things with style ebuilds.
+ epatch "${FILESDIR}/gentoo_style_location-1.1.x.patch"
+ eprefixify util/fluxbox-generate_menu.in
+
+ epatch "${FILESDIR}"/osx-has-otool.patch
+
+ # Add in the Gentoo -r number to fluxbox -version output.
+ if [[ "${PR}" == "r0" ]] ; then
+ suffix="gentoo"
+ else
+ suffix="gentoo-${PR}"
+ fi
+ sed -i \
+ -e "s~\(__fluxbox_version .@VERSION@\)~\1-${suffix}~" \
+ version.h.in || die "version sed failed"
+}
+
+src_configure() {
+ use bidi && append-cppflags "$($(tc-getPKG_CONFIG) --cflags fribidi)"
+
+ econf ${myconf} \
+ $(use_enable bidi fribidi ) \
+ $(use_enable imlib imlib2) \
+ $(use_enable nls) \
+ $(use_enable slit ) \
+ $(use_enable toolbar ) \
+ $(use_enable truetype xft) \
+ $(use_enable xinerama) \
+ --sysconfdir="${EPREFIX}"/etc/X11/${PN} \
+ --with-style="${EPREFIX}"/usr/share/fluxbox/styles/Emerge
+}
+
+src_compile() {
+ default
+
+ ebegin "Creating a menu file (may take a while)"
+ mkdir -p "${T}/home/.fluxbox" || die "mkdir home failed"
+ # Call fluxbox-generate_menu through bash since it lacks +x
+ # chmod 744 may be an equal fix
+ MENUFILENAME="${S}/data/menu" MENUTITLE="Fluxbox ${PV}" \
+ CHECKINIT="no. go away." HOME="${T}/home" \
+ bash "${S}/util/fluxbox-generate_menu" -is -ds \
+ || die "menu generation failed"
+ eend $?
+}
+
+src_install() {
+ emake DESTDIR="${D}" STRIP="" install
+ dodoc README* AUTHORS TODO* ChangeLog NEWS
+
+ # Install the generated menu
+ insinto /usr/share/fluxbox
+ doins data/menu
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/${PN}.desktop
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}.xsession fluxbox
+
+ # Styles menu framework
+ insinto /usr/share/fluxbox/menu.d/styles
+ doins "${FILESDIR}"/styles-menu-fluxbox
+ doins "${FILESDIR}"/styles-menu-commonbox
+ doins "${FILESDIR}"/styles-menu-user
+}
diff --git a/x11-wm/fluxbox/fluxbox-9999.ebuild b/x11-wm/fluxbox/fluxbox-9999.ebuild
new file mode 100644
index 000000000000..9efc051d8411
--- /dev/null
+++ b/x11-wm/fluxbox/fluxbox-9999.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic toolchain-funcs git-2 prefix
+
+IUSE="nls xinerama bidi +truetype +imlib +slit +systray +toolbar vim-syntax"
+
+REQUIRED_USE="systray? ( toolbar )"
+
+DESCRIPTION="Fluxbox is an X11 window manager featuring tabs and an iconbar"
+
+EGIT_REPO_URI="git://git.fluxbox.org/fluxbox.git"
+SRC_URI=""
+HOMEPAGE="http://www.fluxbox.org"
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS=""
+
+RDEPEND="
+ !!<=x11-misc/fbdesk-1.2.1
+ !!<=x11-misc/fluxconf-0.9.9
+ !!<x11-themes/fluxbox-styles-fluxmod-20040809-r1
+ bidi? ( >=dev-libs/fribidi-0.19.2 )
+ imlib? ( >=media-libs/imlib2-1.2.0[X] )
+ truetype? ( media-libs/freetype )
+ vim-syntax? ( app-vim/fluxbox-syntax )
+ x11-libs/libXext
+ x11-libs/libXft
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ xinerama? ( x11-libs/libXinerama )
+ || ( x11-misc/gxmessage x11-apps/xmessage )
+"
+DEPEND="
+ ${RDEPEND}
+ bidi? ( virtual/pkgconfig )
+ nls? ( sys-devel/gettext )
+ x11-proto/xextproto
+"
+
+src_prepare() {
+ ./autogen.sh
+
+ # We need to be able to include directories rather than just plain
+ # files in menu [include] items. This patch will allow us to do clever
+ # things with style ebuilds.
+ epatch "${FILESDIR}/gentoo_style_location-1.1.x.patch"
+ eprefixify util/fluxbox-generate_menu.in
+
+ epatch "${FILESDIR}"/osx-has-otool.patch
+
+ # Add in the Gentoo -r number to fluxbox -version output.
+ if [[ "${PR}" == "r0" ]] ; then
+ suffix="gentoo"
+ else
+ suffix="gentoo-${PR}"
+ fi
+ sed -i \
+ -e "s~\(__fluxbox_version .@VERSION@\)~\1-${suffix}~" \
+ version.h.in || die "version sed failed"
+}
+
+src_configure() {
+ use bidi && append-cppflags "$($(tc-getPKG_CONFIG) --cflags fribidi)"
+
+ econf $(use_enable bidi fribidi ) \
+ $(use_enable imlib imlib2) \
+ $(use_enable nls) \
+ $(use_enable slit ) \
+ $(use_enable systray) \
+ $(use_enable toolbar ) \
+ $(use_enable truetype xft) \
+ $(use_enable xinerama) \
+ --sysconfdir="${EPREFIX}"/etc/X11/${PN} \
+ --with-style="${EPREFIX}"/usr/share/fluxbox/styles/Emerge
+}
+
+src_compile() {
+ default
+
+ ebegin "Creating a menu file (may take a while)"
+ mkdir -p "${T}/home/.fluxbox" || die "mkdir home failed"
+ # Call fluxbox-generate_menu through bash since it lacks +x
+ # chmod 744 may be an equal fix
+ MENUFILENAME="${S}/data/menu" MENUTITLE="Fluxbox ${PV}" \
+ CHECKINIT="no. go away." HOME="${T}/home" \
+ bash "${S}/util/fluxbox-generate_menu" -is -ds \
+ || die "menu generation failed"
+ eend $?
+}
+
+src_install() {
+ emake DESTDIR="${D}" STRIP="" install
+ dodoc README* AUTHORS TODO* ChangeLog NEWS
+
+ # Install the generated menu
+ insinto /usr/share/fluxbox
+ doins data/menu
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/${PN}.desktop
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}.xsession fluxbox
+
+ # Styles menu framework
+ insinto /usr/share/fluxbox/menu.d/styles
+ doins "${FILESDIR}"/styles-menu-fluxbox
+ doins "${FILESDIR}"/styles-menu-commonbox
+ doins "${FILESDIR}"/styles-menu-user
+}
diff --git a/x11-wm/fluxbox/metadata.xml b/x11-wm/fluxbox/metadata.xml
new file mode 100644
index 000000000000..74fcf355ff49
--- /dev/null
+++ b/x11-wm/fluxbox/metadata.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>pchrist@gentoo.org</email>
+ <name>Panagiotis Christopoulos</name>
+ </maintainer>
+ <maintainer>
+ <email>zlg@gentoo.org</email>
+ <name>Daniel Campbell</name>
+ <description>Maintainer. Assign bugs to him</description>
+ </maintainer>
+ <longdescription>
+ Fluxbox is yet another windowmanager for X. Originally based upon the
+ Blackbox 0.61.1 code, Fluxbox has been extended to include a new tabbed
+ window handling mechanism, an improved configurable window title bar,
+ better KDE and GNOME integration, an integrated key grabber and
+ countless additional features.
+ </longdescription>
+ <use>
+ <flag name="bidi">
+ Enable bidirectional language support with
+ <pkg>dev-libs/fribidi</pkg>
+ </flag>
+ <flag name="slit">Enables the Fluxbox slit (or dock)</flag>
+ <flag name="systray">Enables the system tray in the Fluxbox toolbar</flag>
+ <flag name="toolbar">Enables the Fluxbox toolbar</flag>
+ </use>
+</pkgmetadata>
diff --git a/x11-wm/fvwm/Manifest b/x11-wm/fvwm/Manifest
new file mode 100644
index 000000000000..2d261c0d56a4
--- /dev/null
+++ b/x11-wm/fvwm/Manifest
@@ -0,0 +1 @@
+DIST fvwm-2.6.5.tar.bz2 2582655 SHA256 21549995c53906be5533746a1cf61b1ecf8dd8ef6816a0b20615d45ff78b48cf SHA512 a1b8cf5a5124b939441834a2fb44c885c579939e4099cf2c8178ea2c4261258df4e565068593699f9446e363135a2666c9288c1bce551a6cf5c6c79287104698 WHIRLPOOL 65ff02fb9f0c9ac5803a77be5b61621393ebb0a772acd32370c7796340726cbe3bfc125a56852272ec4fe619031bf12cb7fb8bc7ed1852b3addffaa355221e68
diff --git a/x11-wm/fvwm/files/README.translucency b/x11-wm/fvwm/files/README.translucency
new file mode 100644
index 000000000000..a60b5f668acd
--- /dev/null
+++ b/x11-wm/fvwm/files/README.translucency
@@ -0,0 +1,94 @@
+From owner-fvwm@hpc.uh.edu Sun Aug 31 22:52:59 2003
+Received: from sina.hpc.uh.edu ([129.7.128.10] ident=lists)
+ by malifon.math.uh.edu with esmtp (Exim 3.20 #1)
+ id 19tb0F-0006NY-00; Sun, 31 Aug 2003 17:48:59 -0500
+Received: by sina.hpc.uh.edu (TLB v0.09a (1.20 tibbs 1996/10/09 22:03:07)); Sun, 31 Aug 2003 17:50:31 -0500 (CDT)
+Received: from epithumia.math.uh.edu (epithumia.math.uh.edu [129.7.128.2])
+ by sina.hpc.uh.edu (8.9.3/8.9.3) with ESMTP id RAA16575
+ for <fvwm@hpc.uh.edu>; Sun, 31 Aug 2003 17:50:24 -0500 (CDT)
+Received: from epithumia.math.uh.edu (epithumia.math.uh.edu [127.0.0.1])
+ by epithumia.math.uh.edu (8.12.8/8.12.5) with ESMTP id h7VMml6M025095
+ for <fvwm@hpc.uh.edu>; Sun, 31 Aug 2003 17:48:47 -0500
+Received: (from tibbs@localhost)
+ by epithumia.math.uh.edu (8.12.8/8.12.8/Submit) id h7VMmlVC025093
+ for fvwm@hpc.uh.edu; Sun, 31 Aug 2003 17:48:47 -0500
+Received: from util2.math.uh.edu (util2.math.uh.edu [129.7.128.23])
+ by sina.hpc.uh.edu (8.9.3/8.9.3) with ESMTP id QAA16418
+ for <fvwm@hpc.uh.edu>; Sun, 31 Aug 2003 16:02:07 -0500 (CDT)
+Received: from postfix4-2.free.fr ([213.228.0.176])
+ by util2.math.uh.edu with esmtp (Exim 4.20)
+ id 19tZIm-00079F-6t
+ for fvwm@fvwm.org; Sun, 31 Aug 2003 16:00:00 -0500
+Received: from snoopy.folie (nas-p19-3-62-147-221-172.dial.proxad.net [62.147.221.172])
+ by postfix4-2.free.fr (Postfix) with ESMTP id 59DE6C386
+ for <fvwm@fvwm.org>; Sun, 31 Aug 2003 22:59:34 +0200 (CEST)
+Received: by snoopy.folie (Postfix, from userid 501)
+ id A4D1D48784; Sun, 31 Aug 2003 22:39:19 +0200 (CEST)
+Date: Sun, 31 Aug 2003 22:39:19 +0200
+From: Olivier Chapuis <olivier.chapuis@free.fr>
+To: fvwm@fvwm.org
+Subject: Re: FVWM: Transparency/Translucency revisited...
+Message-ID: <20030831203919.GA6205@snoopy.folie>
+Mail-Followup-To: fvwm@fvwm.org
+References: <Pine.LNX.4.44.0308251817370.1980-100000@atlantis.ssw.krakow.pl>
+Mime-Version: 1.0
+Content-Type: multipart/mixed; boundary="Nq2Wo0NMKNjxTN9z"
+Content-Disposition: inline
+In-Reply-To: <Pine.LNX.4.44.0308251817370.1980-100000@atlantis.ssw.krakow.pl>
+User-Agent: Mutt/1.4i
+X-Spam-Score: -9.3 (---------)
+Sender: owner-fvwm@hpc.uh.edu
+Precedence: list
+X-Majordomo: 1.94.jlt7
+Status: RO
+Content-Length: 6519
+Lines: 122
+
+
+--Nq2Wo0NMKNjxTN9z
+Content-Type: text/plain; charset=us-ascii
+Content-Disposition: inline
+
+On Mon, Aug 25, 2003 at 09:00:32PM +0200, Dawid Kuroczko wrote:
+> Hello. :-)
+>
+> I did manage to make pseudo-transparent menus, but now I'd like
+> to make something more "real". What I'd like to do is to have
+> something like there is in KDE.
+>
+> It should work like this:
+> 1. user clicks thus calling a Menu.
+> 2. current screen dump is taken (with all the windows, but
+> without a menu just as yet).
+> 3. this screen dump is made available to Menu as
+> root background pixmap.
+> 4. Menu is displayed with tinted real background.
+>
+> This way it's pretty easy to make an illusion of real
+> transparency (and looks "l33t", as some may say).
+>
+
+Here a new version of the patch for current cvs/snapshot.
+This patch add a new options to Colorset: Translucent/NoTranslucent.
+These options has effects only with (non tear-off) menu.
+Also menu animation is "handled".
+
+For example with:
+
+ Colorset 5 fg yellow, bg blue, HGradient 200 lightblue darkblue, \
+ Translucent blue 60
+ Style * MenuColorset 5, PopupOffset 0 100, AnimationOff
+
+you get translucent menus (with a 60% blue tint) and if you tear-off
+a menu the menu use the gradient.
+
+Regards, Olivier
+
+<snip patch>
+
+--
+Visit the official FVWM web page at <URL: http://www.fvwm.org/>.
+To unsubscribe from the list, send "unsubscribe fvwm" in the body of a
+message to majordomo@fvwm.org.
+To report problems, send mail to fvwm-owner@fvwm.org.
+
diff --git a/x11-wm/fvwm/files/fvwm-2.5.27-translucent-menus.diff b/x11-wm/fvwm/files/fvwm-2.5.27-translucent-menus.diff
new file mode 100644
index 000000000000..1c49f69007d0
--- /dev/null
+++ b/x11-wm/fvwm/files/fvwm-2.5.27-translucent-menus.diff
@@ -0,0 +1,528 @@
+Index: fvwm/colorset.c
+===================================================================
+RCS file: /home/cvs/fvwm/fvwm/fvwm/colorset.c,v
+retrieving revision 1.52
+diff -u -r1.52 colorset.c
+--- fvwm/colorset.c 27 Jan 2007 11:33:15 -0000 1.52
++++ fvwm/colorset.c 5 Feb 2007 19:15:51 -0000
+@@ -164,6 +164,8 @@
+ "NoIconTint",
+ "IconAlpha",
+
++ "Translucent",
++ "NoTranslucent",
+ NULL
+ };
+
+@@ -625,6 +627,7 @@
+ char *fg_tint = NULL;
+ char *bg_tint = NULL;
+ char *icon_tint = NULL;
++ char *translucent_tint = NULL;
+ Bool have_pixels_changed = False;
+ Bool has_icon_pixels_changed = False;
+ Bool has_fg_changed = False;
+@@ -637,6 +640,7 @@
+ Bool has_fg_tint_changed = False;
+ Bool has_bg_tint_changed = False;
+ Bool has_icon_tint_changed = False;
++ Bool has_translucent_tint_changed = False;
+ Bool has_pixmap_changed = False;
+ Bool has_shape_changed = False;
+ Bool has_image_alpha_changed = False;
+@@ -763,6 +767,10 @@
+ case 21: /* Plain */
+ has_pixmap_changed = True;
+ free_colorset_background(cs, True);
++ cs->is_translucent = False;
++ cs->translucent_tint_percent = 0;
++ cs->color_flags &= ~TRANSLUCENT_TINT_SUPPLIED;
++ has_translucent_tint_changed = True;
+ break;
+ case 22: /* NoShape */
+ has_shape_changed = True;
+@@ -929,6 +937,24 @@
+ cs->icon_alpha_percent = tmp;
+ }
+ break;
++ case 42: /* Translucent */
++ cs->is_translucent = True;
++ parse_simple_tint(
++ cs, args, &translucent_tint,
++ TRANSLUCENT_TINT_SUPPLIED,
++ &has_translucent_tint_changed, &percent,
++ "Translucent");
++ if (has_translucent_tint_changed)
++ {
++ cs->translucent_tint_percent = percent;
++ }
++ break;
++ case 43: /* NoTranslucent */
++ cs->is_translucent = False;
++ cs->translucent_tint_percent = 0;
++ cs->color_flags &= ~TRANSLUCENT_TINT_SUPPLIED;
++ has_translucent_tint_changed = True;
++ break;
+ default:
+ /* test for ?Gradient */
+ if (option[0] && StrEquals(&option[1], "Gradient"))
+@@ -1615,6 +1641,27 @@
+ }
+
+ /*
++ * ---------- change the translucent tint colour ----------
++ */
++ if (has_translucent_tint_changed)
++ {
++ /* user specified colour */
++ if (translucent_tint != NULL)
++ {
++ PictureFreeColors(
++ dpy, Pcmap, &cs->translucent_tint, 1, 0, True);
++ cs->translucent_tint = GetColor(translucent_tint);
++ }
++ else
++ {
++ /* default */
++ PictureFreeColors(
++ dpy, Pcmap, &cs->translucent_tint, 1, 0, True);
++ cs->translucent_tint = GetColor(black);
++ }
++ }
++
++ /*
+ * ---------- send new colorset to fvwm and clean up ----------
+ */
+ /* make sure the server has this to avoid races */
+@@ -1710,6 +1757,7 @@
+ ncs->fgsh = GetColor(white);
+ ncs->tint = GetColor(black);
+ ncs->icon_tint = GetColor(black);
++ ncs->translucent_tint = GetColor(black);
+ ncs->pixmap = XCreatePixmapFromBitmapData(
+ dpy, Scr.NoFocusWin,
+ &g_bits[4 * (nColorsets % 3)], 4, 4,
+@@ -1727,6 +1775,7 @@
+ ncs->fgsh = GetForeShadow(ncs->fg, ncs->bg);
+ ncs->tint = GetColor(black);
+ ncs->icon_tint = GetColor(black);
++ ncs->translucent_tint = GetColor(black);
+ }
+ ncs->fg_tint = ncs->bg_tint = GetColor(black);
+ /* set flags for fg contrast, bg average */
+@@ -1738,6 +1787,7 @@
+ ncs->icon_alpha_percent = 100;
+ ncs->tint_percent = 0;
+ ncs->icon_tint_percent = 0;
++ ncs->translucent_tint_percent = 0;
+ ncs->fg_tint_percent = ncs->bg_tint_percent = 0;
+ ncs->dither = (PictureDitherByDefault())? True:False;
+ nColorsets++;
+Index: fvwm/menuroot.h
+===================================================================
+RCS file: /home/cvs/fvwm/fvwm/fvwm/menuroot.h,v
+retrieving revision 1.3
+diff -u -r1.3 menuroot.h
+--- fvwm/menuroot.h 13 Jan 2007 15:07:14 -0000 1.3
++++ fvwm/menuroot.h 5 Feb 2007 19:17:37 -0000
+@@ -146,6 +146,9 @@
+ int d_npixels;
+ } stored_pixels;
+ /* alloc pixels when dithering is used for gradients */
++ /* x,y XMapRaise */
++ int x;
++ int y;
+ } MenuRootDynamic;
+
+ /* access macros to dynamic menu members */
+Index: fvwm/menus.c
+===================================================================
+RCS file: /home/cvs/fvwm/fvwm/fvwm/menus.c,v
+retrieving revision 1.409
+diff -u -r1.409 menus.c
+--- fvwm/menus.c 27 Jan 2007 11:51:15 -0000 1.409
++++ fvwm/menus.c 5 Feb 2007 19:17:50 -0000
+@@ -75,6 +75,19 @@
+
+ /* ---------------------------- local macros ------------------------------- */
+
++#define MENU_IS_TRANSLUCENT(mr,cs) \
++ (!MR_IS_TEAR_OFF_MENU(mr) && CSET_IS_TRANSLUCENT(cs))
++#define MENU_IS_TRANSPARENT(mr,cs) \
++ (MENU_IS_TRANSLUCENT(mr,cs) || CSET_IS_TRANSPARENT(cs))
++#define MR_IS_TRANSLUCENT_MENU(mr) \
++ (!MR_IS_TEAR_OFF_MENU(mr) && MR_STYLE(mr) && \
++ ST_HAS_MENU_CSET(MR_STYLE(mr)) && CSET_IS_TRANSLUCENT( \
++ ST_CSET_MENU(MR_STYLE(mr))))
++#define MR_IS_TRANSPARENT_MENU(mr) \
++ (MR_IS_TRANSLUCENT_MENU(mr) || (MR_STYLE(mr) && \
++ ST_HAS_MENU_CSET(MR_STYLE(mr)) && CSET_IS_TRANSPARENT( \
++ ST_CSET_MENU(MR_STYLE(mr)))))
++
+ /* ---------------------------- imports ------------------------------------ */
+
+ /* This external is safe. It's written only during startup. */
+@@ -188,6 +201,8 @@
+ } mloop_static_info_t;
+
+ /* ---------------------------- forward declarations ----------------------- */
++static MenuRoot *seek_submenu_instance(
++ MenuRoot *parent_menu, MenuItem *parent_item);
+
+ /* ---------------------------- local variables ---------------------------- */
+
+@@ -353,12 +368,22 @@
+ Bool transparent_bg = False;
+
+ /* move it back */
+- if (ST_HAS_MENU_CSET(MR_STYLE(mr)) &&
+- CSET_IS_TRANSPARENT(ST_CSET_MENU(MR_STYLE(mr))))
++ if (MR_IS_TRANSPARENT_MENU(mr))
+ {
+ transparent_bg = True;
+ get_menu_repaint_transparent_parameters(
+ &mrtp, mr, fw);
++ if (MR_IS_TRANSLUCENT_MENU(mr) && MR_SUBMENU_ITEM(mr))
++ {
++ MenuRoot *smr;
++ smr = seek_submenu_instance(
++ mr, MR_SUBMENU_ITEM(mr));
++ if (smr)
++ {
++ /* just unmap it here, popdown later */
++ XUnmapWindow(dpy, MR_WINDOW(smr));
++ }
++ }
+ }
+ AnimatedMoveOfWindow(
+ MR_WINDOW(mr), act_x, act_y, act_x - MR_XANIMATION(mr),
+@@ -1779,6 +1804,7 @@
+ /* Doh. Use the standard display instead. */
+ MR_CREATE_DPY(mr) = dpy;
+ }
++ MR_IS_TEAR_OFF_MENU(mr) = 1;
+ }
+ else
+ {
+@@ -2594,7 +2620,37 @@
+ }
+ MR_IS_PAINTED(mr) = 1;
+ /* paint the menu background */
+- if (ms && ST_HAS_MENU_CSET(ms))
++ if (MR_IS_TRANSLUCENT_MENU(mr))
++ {
++ Pixmap trans = None;
++ FvwmRenderAttributes fra;
++ colorset_t *colorset = &Colorset[ST_CSET_MENU(ms)];
++
++ fra.mask = 0;
++ if (colorset->translucent_tint_percent > 0)
++ {
++ fra.mask = FRAM_HAVE_TINT;
++ fra.tint = colorset->translucent_tint;
++ fra.tint_percent = colorset->translucent_tint_percent;
++ }
++ if (MR_IS_BACKGROUND_SET(mr) == False)
++ {
++ trans = PGraphicsCreateTranslucent(
++ dpy, MR_WINDOW(mr), &fra,
++ BACK_GC(ST_MENU_INACTIVE_GCS(ms)),
++ MR_X(mr), MR_Y(mr), MR_WIDTH(mr), MR_HEIGHT(mr));
++ XMapRaised(dpy, MR_WINDOW(mr));
++ if (trans != None)
++ {
++ XSetWindowBackgroundPixmap(
++ dpy, MR_WINDOW(mr), trans);
++ MR_IS_BACKGROUND_SET(mr) = True;
++ clear_expose_menu_area(MR_WINDOW(mr), pevent);
++ XFreePixmap(dpy, trans);
++ }
++ }
++ }
++ else if (ms && ST_HAS_MENU_CSET(ms))
+ {
+ if (MR_IS_BACKGROUND_SET(mr) == False)
+ {
+@@ -3401,10 +3457,7 @@
+ MR_HAS_POPPED_UP_RIGHT(mr) = 0;
+ }
+ MR_XANIMATION(parent_menu) += end_x - prev_x;
+- if (ST_HAS_MENU_CSET(MR_STYLE(parent_menu)) &&
+- CSET_IS_TRANSPARENT(
+- ST_CSET_MENU(
+- MR_STYLE(parent_menu))))
++ if (MR_IS_TRANSPARENT_MENU(parent_menu))
+ {
+ transparent_bg = True;
+ get_menu_repaint_transparent_parameters(
+@@ -3583,10 +3636,21 @@
+ */
+
+ XMoveWindow(dpy, MR_WINDOW(mr), x, y);
++ MR_X(mr) = x;
++ MR_Y(mr) = y;
+ XSelectInput(dpy, MR_WINDOW(mr), event_mask);
+- XMapRaised(dpy, MR_WINDOW(mr));
+- if (popdown_window)
+- XUnmapWindow(dpy, popdown_window);
++ if (MR_IS_TRANSLUCENT_MENU(mr))
++ {
++ if (popdown_window)
++ XUnmapWindow(dpy, popdown_window);
++ paint_menu(mr, NULL, fw);
++ }
++ else
++ {
++ XMapRaised(dpy, MR_WINDOW(mr));
++ if (popdown_window)
++ XUnmapWindow(dpy, popdown_window);
++ }
+ XFlush(dpy);
+ MR_MAPPED_COPIES(mr)++;
+ MST_USAGE_COUNT(mr)++;
+@@ -6123,16 +6187,122 @@
+ {
+ last = True;
+ }
+- if (!last && CSET_IS_TRANSPARENT_PR_TINT(ST_CSET_MENU(ms)))
++ if (!last &&
++ (CSET_IS_TRANSPARENT_PR_TINT(ST_CSET_MENU(ms)) ||
++ MR_IS_TRANSLUCENT_MENU(mr)))
+ {
+ /* too slow ... */
+ return;
+ }
+- SetWindowBackgroundWithOffset(
+- dpy, MR_WINDOW(mr), step_x - current_x, step_y - current_y,
+- MR_WIDTH(mr), MR_HEIGHT(mr),
+- &Colorset[ST_CSET_MENU(ms)], Pdepth,
+- FORE_GC(MST_MENU_INACTIVE_GCS(mr)), False);
++ if (MR_IS_TRANSLUCENT_MENU(mr))
++ {
++ Pixmap trans, tmp;
++ FvwmRenderAttributes fra;
++ colorset_t *colorset = &Colorset[ST_CSET_MENU(ms)];
++
++ fra.mask = 0;
++ if (colorset->translucent_tint_percent > 0)
++ {
++ fra.mask = FRAM_HAVE_TINT;
++ fra.tint = colorset->translucent_tint;
++ fra.tint_percent = colorset->translucent_tint_percent;
++ }
++ if (current_x == step_x)
++ {
++ /* Reuse the old pixmap for the part of the menu
++ * that has not moved. (This can be extended to get
++ * two new rectangles, one in each direction)
++ *
++ * It saves the unmapping of the window and makes
++ * Things less flickering.
++ */
++ GC my_gc;
++ unsigned long valuemask = GCSubwindowMode;
++ XGCValues values;
++ int out_y=0;
++ values.subwindow_mode = IncludeInferiors;
++ if (step_y < 0)
++ {
++ out_y = -step_y;
++ }
++ trans = XCreatePixmap(dpy, MR_WINDOW(mr), MR_WIDTH(mr),
++ MR_HEIGHT(mr), Pdepth);
++ my_gc = fvwmlib_XCreateGC(dpy, MR_WINDOW(mr), 0, NULL);
++ XChangeGC(dpy, my_gc, valuemask, &values);
++
++ XClearWindow(dpy, MR_WINDOW(mr));
++
++ if (current_y < step_y)
++ {
++ XCopyArea(dpy, MR_WINDOW(mr), trans, my_gc, 0,
++ step_y-current_y, MR_WIDTH(mr),
++ MR_HEIGHT(mr)-(step_y-current_y),
++ 0,0);
++ tmp = PGraphicsCreateTranslucent(
++ dpy, MR_WINDOW(mr), &fra,
++ BACK_GC(ST_MENU_INACTIVE_GCS(ms)),
++ current_x, current_y+MR_HEIGHT(mr),
++ MR_WIDTH(mr), step_y-current_y);
++
++ XCopyArea(dpy, tmp, trans, my_gc, 0, 0,
++ MR_WIDTH(mr), step_y-current_y,0,
++ MR_HEIGHT(mr)-(step_y-current_y));
++ }
++ else
++ {
++ XCopyArea(dpy, MR_WINDOW(mr), trans, my_gc, 0,
++ 0, MR_WIDTH(mr),
++ MR_HEIGHT(mr)-(current_y-step_y), 0,
++ current_y-step_y);
++ tmp = PGraphicsCreateTranslucent(
++ dpy, MR_WINDOW(mr), &fra,
++ BACK_GC(ST_MENU_INACTIVE_GCS(ms)),
++ current_x,step_y, MR_WIDTH(mr),
++ current_y-step_y);
++ XCopyArea(dpy, tmp, trans, my_gc, 0, 0,
++ MR_WIDTH(mr), current_y-step_y,0,
++ out_y);
++ }
++ MR_X(mr) = step_x;
++ MR_Y(mr) = step_y;
++ XFreePixmap(dpy, tmp);
++ XFreeGC(dpy,my_gc);
++ }
++ else
++ {
++ XUnmapWindow(dpy, MR_WINDOW(mr));
++ MR_X(mr) = step_x;
++ MR_Y(mr) = step_y;
++ trans = PGraphicsCreateTranslucent(
++ dpy, MR_WINDOW(mr), &fra,
++ BACK_GC(ST_MENU_INACTIVE_GCS(ms)),
++ step_x, step_y, MR_WIDTH(mr),
++ MR_HEIGHT(mr));
++ XMapRaised(dpy, MR_WINDOW(mr));
++ }
++ XSetWindowBackgroundPixmap(
++ dpy, MR_WINDOW(mr), trans);
++ XFreePixmap(dpy, trans);
++ if (current_x == step_x)
++ {
++ /* Redraw the border */
++ RelieveRectangle(
++ dpy, MR_WINDOW(mr), 0, 0, MR_WIDTH(mr) - 1,
++ MR_HEIGHT(mr) - 1, (Pdepth < 2) ?
++ SHADOW_GC(MST_MENU_INACTIVE_GCS(mr)) :
++ HILIGHT_GC(MST_MENU_INACTIVE_GCS(mr)),
++ SHADOW_GC(MST_MENU_INACTIVE_GCS(mr)),
++ MST_BORDER_WIDTH(mr));
++ }
++ }
++ else
++ {
++ SetWindowBackgroundWithOffset(
++ dpy, MR_WINDOW(mr), step_x - current_x,
++ step_y - current_y, MR_WIDTH(mr), MR_HEIGHT(mr),
++ &Colorset[ST_CSET_MENU(ms)], Pdepth,
++ FORE_GC(MST_MENU_INACTIVE_GCS(mr)), False);
++ }
+ }
+
+
+@@ -6173,10 +6343,7 @@
+ }
+ if (!is_bg_set)
+ {
+- SetWindowBackground(
+- dpy, MR_WINDOW(mr), MR_WIDTH(mr), MR_HEIGHT(mr),
+- &Colorset[ST_CSET_MENU(ms)], Pdepth,
+- FORE_GC(MST_MENU_INACTIVE_GCS(mr)), False);
++ update_transparent_menu_bg(prtm, x, y, x, y, end_x, end_y);
+ }
+ /* redraw the background of non active item */
+ for (mi = MR_FIRST_ITEM(mr); mi != NULL; mi = MI_NEXT_ITEM(mi))
+@@ -6813,10 +6980,12 @@
+ SetWindowBackground(
+ dpy, MR_WINDOW(mr), MR_WIDTH(mr),
+ MR_HEIGHT(mr),
+- &Colorset[ST_CSET_MENU(ms)],
+- Pdepth,
++ &Colorset[ST_CSET_MENU(ms)], Pdepth,
+ FORE_GC(MST_MENU_INACTIVE_GCS(mr)),
+- True);
++ False);
++ XClearArea(
++ dpy, MR_WINDOW(mr), 0, 0, MR_WIDTH(mr),
++ MR_HEIGHT(mr), True);
+ }
+ else if ((ST_HAS_ACTIVE_CSET(ms) &&
+ ST_CSET_ACTIVE(ms) == cset) ||
+Index: fvwm/menus.h
+===================================================================
+RCS file: /home/cvs/fvwm/fvwm/fvwm/menus.h,v
+retrieving revision 1.111
+diff -u -r1.111 menus.h
+--- fvwm/menus.h 27 Jan 2007 11:51:15 -0000 1.111
++++ fvwm/menus.h 5 Feb 2007 19:17:50 -0000
+@@ -15,6 +15,9 @@
+ #define IS_MENU_RETURN(x) \
+ ((x)==MENU_DONE || (x)==MENU_ABORTED || (x)==MENU_SUBMENU_TORN_OFF)
+
++#define MR_X(m) ((m)->d->x)
++#define MR_Y(m) ((m)->d->y)
++
+ struct MenuRoot;
+ struct MenuStyle;
+ struct MenuReturn;
+Index: libs/Colorset.h
+===================================================================
+RCS file: /home/cvs/fvwm/fvwm/libs/Colorset.h,v
+retrieving revision 1.38
+diff -u -r1.38 Colorset.h
+--- libs/Colorset.h 10 Jan 2007 00:34:27 -0000 1.38
++++ libs/Colorset.h 5 Feb 2007 19:19:00 -0000
+@@ -51,6 +51,10 @@
+ Bool dither;
+ Bool allows_buffered_transparency;
+ Bool is_maybe_root_transparent;
++ /* only use by fvwm menu (non tear-off) */
++ Bool is_translucent;
++ Pixel translucent_tint;
++ unsigned int translucent_tint_percent : 7;
+ #endif
+ } colorset_t;
+
+@@ -78,6 +82,7 @@
+ #define FG_TINT_SUPPLIED 0x100
+ #define BG_TINT_SUPPLIED 0x200
+ #define ICON_TINT_SUPPLIED 0x400
++#define TRANSLUCENT_TINT_SUPPLIED 0x800
+ #endif
+
+ /* colorsets are stored as an array of structs to permit fast dereferencing */
+@@ -153,6 +158,11 @@
+ (cset != NULL && cset->pixmap == ParentRelative && \
+ cset->tint_percent > 0)
+
++#define CSET_IS_TRANSLUCENT(cset) \
++ (cset >= 0 && Colorset[cset].is_translucent)
++#define CSETS_IS_TRANSLUCENT(cset) \
++ (cset && cset->is_translucent)
++
+ #ifndef FVWM_COLORSET_PRIVATE
+ /* Create n new colorsets, fvwm/colorset.c does its own thing (different size)
+ */
+Index: libs/PictureGraphics.c
+===================================================================
+RCS file: /home/cvs/fvwm/fvwm/libs/PictureGraphics.c,v
+retrieving revision 1.29
+diff -u -r1.29 PictureGraphics.c
+--- libs/PictureGraphics.c 27 Jan 2007 11:33:16 -0000 1.29
++++ libs/PictureGraphics.c 5 Feb 2007 19:19:49 -0000
+@@ -1340,7 +1340,7 @@
+ }
+ }
+
+-#if 0 /* humm... maybe useful one day with menus */
++#if 1 /* humm... maybe useful one day with menus */
+ Pixmap PGraphicsCreateTranslucent(
+ Display *dpy, Window win, FvwmRenderAttributes *fra, GC gc,
+ int x, int y, int width, int height)
+Index: libs/PictureGraphics.h
+===================================================================
+RCS file: /home/cvs/fvwm/fvwm/libs/PictureGraphics.h,v
+retrieving revision 1.13
+diff -u -r1.13 PictureGraphics.h
+--- libs/PictureGraphics.h 9 May 2006 20:46:29 -0000 1.13
++++ libs/PictureGraphics.h 5 Feb 2007 19:19:49 -0000
+@@ -122,7 +122,9 @@
+ Display *dpy, Window win, Pixel tint, int tint_percent,
+ Drawable dest, Bool dest_is_a_window, GC gc, GC mono_gc, GC alpha_gc,
+ int dest_x, int dest_y, int dest_w, int dest_h);
+-
++Pixmap PGraphicsCreateTranslucent(
++ Display *dpy, Window win, FvwmRenderAttributes *fra, GC gc,
++ int x, int y, int width, int height);
+ /* never used ! */
+ Pixmap PGraphicsCreateDitherPixmap(
+ Display *dpy, Window win, Drawable src, Pixmap mask, int depth, GC gc,
diff --git a/x11-wm/fvwm/files/fvwm-2.6.5-ar.patch b/x11-wm/fvwm/files/fvwm-2.6.5-ar.patch
new file mode 100644
index 000000000000..b1d62006967f
--- /dev/null
+++ b/x11-wm/fvwm/files/fvwm-2.6.5-ar.patch
@@ -0,0 +1,35 @@
+--- configure.ac 2012-04-20 12:58:29.000000000 +0200
++++ configure_new.ac 2013-07-21 18:26:17.513904607 +0200
+@@ -209,6 +209,10 @@
+ # optional libraries.
+ AC_PROG_CC
+ AC_PROG_CPP
++AN_MAKEVAR([AR], [AC_PROG_AR])
++AN_PROGRAM([ar], [AC_PROG_AR])
++AC_DEFUN([AC_PROG_AR], [AC_CHECK_TOOL(AR, ar, :)])
++AC_PROG_AR
+
+ # added -Wall for gcc, what about for others?
+ if test "x$GCC" = "xyes"; then
+--- libs/Makefile.in 2012-04-20 13:03:55.000000000 +0200
++++ libs/Makefile_new.in 2013-07-21 18:27:17.443992505 +0200
+@@ -48,7 +48,7 @@
+ CONFIG_CLEAN_FILES =
+ CONFIG_CLEAN_VPATH_FILES =
+ LIBRARIES = $(noinst_LIBRARIES)
+-AR = ar
++AR = @AR@
+ ARFLAGS = cru
+ libfvwm_a_AR = $(AR) $(ARFLAGS)
+ libfvwm_a_DEPENDENCIES = @LIBOBJS@ @ALLOCA@
+--- modules/FvwmScript/Widgets/Makefile.in 2012-04-20 13:03:56.000000000 +0200
++++ modules/FvwmScript/Widgets/Makefile_new.in 2013-07-21 18:27:23.844001892 +0200
+@@ -46,7 +46,7 @@
+ CONFIG_CLEAN_FILES =
+ CONFIG_CLEAN_VPATH_FILES =
+ LIBRARIES = $(noinst_LIBRARIES)
+-AR = ar
++AR = @AR@
+ ARFLAGS = cru
+ libWidgets_a_AR = $(AR) $(ARFLAGS)
+ libWidgets_a_LIBADD =
diff --git a/x11-wm/fvwm/files/fvwm-2.6.5-mouse-buttons.patch b/x11-wm/fvwm/files/fvwm-2.6.5-mouse-buttons.patch
new file mode 100644
index 000000000000..7eaa3e20b7c7
--- /dev/null
+++ b/x11-wm/fvwm/files/fvwm-2.6.5-mouse-buttons.patch
@@ -0,0 +1,11 @@
+--- libs/defaults.h 2011-08-15 18:25:40.000000000 +0200
++++ libs/defaults.h 2012-04-12 21:13:47.000000000 +0200
+@@ -25,7 +25,7 @@
+ /* The "extended" buttons do not provide the full functionality because X has
+ * no bit mask value for them. Things like dragging windows don't work with
+ * them. */
+-#define NUMBER_OF_EXTENDED_MOUSE_BUTTONS 9
++#define NUMBER_OF_EXTENDED_MOUSE_BUTTONS 15
+ #if NUMBER_OF_EXTENDED_MOUSE_BUTTONS > 31
+ #error No more than 31 mouse buttons can be supported on 32 bit platforms
+ #endif
diff --git a/x11-wm/fvwm/fvwm-2.6.5.ebuild b/x11-wm/fvwm/fvwm-2.6.5.ebuild
new file mode 100644
index 000000000000..74bc6a53557e
--- /dev/null
+++ b/x11-wm/fvwm/fvwm-2.6.5.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils flag-o-matic
+
+DESCRIPTION="An extremely powerful ICCCM-compliant multiple virtual desktop window manager"
+HOMEPAGE="http://www.fvwm.org/"
+SRC_URI="ftp://ftp.fvwm.org/pub/fvwm/version-2/${P}.tar.bz2"
+
+LICENSE="GPL-2 FVWM"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~ia64 ppc ~ppc64 ~sparc x86 ~x86-fbsd"
+IUSE="bidi debug doc gtk2-perl netpbm nls perl png readline rplay stroke svg tk truetype +vanilla xinerama lock"
+
+COMMON_DEPEND="
+ sys-libs/zlib
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXau
+ x11-libs/libxcb
+ x11-libs/libXcursor
+ x11-libs/libXdmcp
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ bidi? ( dev-libs/fribidi )
+ png? ( media-libs/libpng )
+ readline? (
+ sys-libs/ncurses
+ sys-libs/readline
+ )
+ stroke? ( dev-libs/libstroke )
+ svg? ( gnome-base/librsvg )
+ truetype? (
+ media-libs/fontconfig
+ x11-libs/libXft
+ )
+ xinerama? (
+ x11-proto/xineramaproto
+ x11-libs/libXinerama
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ dev-lang/perl
+ gtk2-perl? ( dev-perl/gtk2-perl )
+ perl? ( tk? (
+ dev-lang/tk
+ dev-perl/perl-tk
+ >=dev-perl/X11-Protocol-0.56
+ )
+ )
+ rplay? ( media-sound/rplay )
+ lock? ( x11-misc/xlockmore )
+ userland_GNU? ( sys-apps/debianutils )
+ !x86-fbsd? ( netpbm? ( media-libs/netpbm ) )
+"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+ doc? ( dev-libs/libxslt )
+ x11-proto/xextproto
+ x11-proto/xproto
+"
+
+src_prepare() {
+ if ! use vanilla; then
+ # Enables fast translucent menus; patch from fvwm-user mailing list.
+ epatch "${FILESDIR}/${PN}-2.5.27-translucent-menus.diff"
+
+ # Allow more mouse buttons, bug #411811
+ epatch "${FILESDIR}/${PN}-2.6.5-mouse-buttons.patch"
+
+ # Apply user-provided patches to the source tree, bug #411811
+ epatch_user
+ fi
+
+ epatch "${FILESDIR}/${PN}-2.6.5-ar.patch" #474528
+ eautoreconf
+}
+
+src_configure() {
+ local myconf="--libexecdir=/usr/lib --with-imagepath=/usr/include/X11/bitmaps:/usr/include/X11/pixmaps:/usr/share/icons/fvwm --enable-package-subdirs --without-gnome"
+
+ # Non-upstream email where bugs should be sent; used in fvwm-bug.
+ export FVWM_BUGADDR="desktop-wm@gentoo.org"
+
+ # Recommended by upstream.
+ append-flags -fno-strict-aliasing
+
+ # Signed chars are required.
+ use ppc && append-flags -fsigned-char
+
+ myconf="${myconf} --disable-gtk"
+
+ use readline && myconf="${myconf} --without-termcap-library"
+
+ econf ${myconf} \
+ $(use_enable bidi) \
+ $(use_enable debug debug-msgs) \
+ $(use_enable debug command-log) \
+ $(use_enable doc htmldoc) \
+ $(use_enable nls) \
+ $(use_enable nls iconv) \
+ $(use_enable perl perllib) \
+ $(use_with png png-library) \
+ $(use_with readline readline-library) \
+ $(use_with rplay rplay-library) \
+ $(use_with stroke stroke-library) \
+ $(use_enable svg rsvg) \
+ $(use_enable truetype xft) \
+ $(use_enable xinerama) \
+ --docdir="/usr/share/doc/${P}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" docdir="/usr/share/doc/${P}" install
+
+ # These are always removed, because gentoo doesn't have anymore
+ # a dev-perl/gtk-perl package, so, these modules are pointless.
+ rm -f "${D}/usr/share/fvwm/perllib/FVWM/Module/Gtk.pm"
+ find "${D}" -name '*FvwmGtkDebug*' -exec rm -f '{}' \; 2>/dev/null
+
+ if ! use lock; then
+ find "${D}" -name '*fvwm-menu-xlock' -exec rm -f '{}' \; 2>/dev/null
+ fi
+
+ if use perl; then
+ if ! use tk; then
+ rm -f "${D}/usr/share/fvwm/perllib/FVWM/Module/Tk.pm"
+ if ! use gtk2-perl; then # no tk and no gtk2 bindings
+ rm -f "${D}/usr/share/fvwm/perllib/FVWM/Module/Toolkit.pm"
+ find "${D}/usr/share/fvwm/perllib" -depth -type d -exec rmdir '{}' \; 2>/dev/null
+ fi
+ fi
+
+ # Now, the Gtk2.pm file, it will require dev-perl/gtk2-perl
+ # so it implies gtk2 as well. That's why we need another use flag.
+ if ! use gtk2-perl; then
+ rm -f "${D}/usr/share/fvwm/perllib/FVWM/Module/Gtk2.pm"
+ fi
+ else
+ # Completely wipe it if ! use perl
+ rm -rf "${D}/usr/bin/fvwm-perllib" \
+ "${D}/usr/share/man/man1/fvwm-perllib.1"
+ fi
+
+ # Utility for testing FVWM behaviour by creating a simple window with
+ # configurable hints.
+ if use debug; then
+ dobin "${S}/tests/hints/hints_test"
+ newdoc "${S}/tests/hints/README" README.hints
+ fi
+
+ dodir /etc/X11/Sessions
+ echo "/usr/bin/fvwm" > "${D}/etc/X11/Sessions/${PN}" || die
+ fperms a+x /etc/X11/Sessions/${PN} || die
+
+ dodoc AUTHORS ChangeLog NEWS README \
+ docs/{ANNOUNCE,BUGS,COMMANDS,CONVENTIONS} \
+ docs/{DEVELOPERS,error_codes,FAQ,TODO,fvwm.lsm}
+
+ # README file for translucent menus patch.
+ if ! use vanilla; then
+ dodoc "${FILESDIR}"/README.translucency
+ ewarn "You are using a patched build, so, please, don't"
+ ewarn "report bugs at the fvwm-workers list unless you are"
+ ewarn "also able to reproduce them with a vanilla build (USE=vanilla)."
+ fi
+}
diff --git a/x11-wm/fvwm/metadata.xml b/x11-wm/fvwm/metadata.xml
new file mode 100644
index 000000000000..703edaa82170
--- /dev/null
+++ b/x11-wm/fvwm/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>i92guboj@gentoo.org</email>
+ <description>Proxied committer, assign bugs</description>
+ </maintainer>
+ <longdescription lang="en">
+ fvwm is an ICCCM-compliant X window manager providing a 3D look for
+ window decorations, multiple discontiguous virtual desktops, a high
+ degree of configurability, and an external module interface for
+ implementing functional extensions.
+ </longdescription>
+ <use>
+ <flag name="gtk2-perl">Enable GTK2 Perl bindings</flag>
+ <flag name="lock">Enable screen locking</flag>
+ <flag name="netpbm">Enable NetPBM support (used by FvwmScript-ScreenDump)</flag>
+ <flag name="rplay">Enable rplay support</flag>
+ <flag name="stroke">Mouse Gesture support</flag>
+ </use>
+</pkgmetadata>
diff --git a/x11-wm/goomwwm/Manifest b/x11-wm/goomwwm/Manifest
new file mode 100644
index 000000000000..488ee85f6618
--- /dev/null
+++ b/x11-wm/goomwwm/Manifest
@@ -0,0 +1 @@
+DIST goomwwm-1.0.0.tar.gz 69967 SHA256 2c65c9002e8254bc51f86c8bdf8b1a04f24c2c6006bbe6244cc85e9e8b9679ae SHA512 a2d486e7b97ef3dd0c6eb0702a21e51853ed1456aee7c1d11c90561a62218a4970a61ebb9ba7551428d72035066d7be445a952083baf9c53957e351ad8f4b5de WHIRLPOOL 6b86018714f4752e3250d8bc495290142d723fbfaaf0e36a426f84f5c31ca2aab38409f84e543d5844c121265ce49137c01d5263d8090eb398d0ddb9564c5e4a
diff --git a/x11-wm/goomwwm/goomwwm-1.0.0.ebuild b/x11-wm/goomwwm/goomwwm-1.0.0.ebuild
new file mode 100644
index 000000000000..3274473731aa
--- /dev/null
+++ b/x11-wm/goomwwm/goomwwm-1.0.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Get out of my way, Window Manager!"
+HOMEPAGE="http://aerosuidae.net/goomwwm/"
+SRC_URI="http://aerosuidae.net/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug"
+
+RDEPEND="
+ x11-libs/libXft
+ x11-libs/libX11
+ x11-libs/libXinerama
+"
+DEPEND="
+ ${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xineramaproto
+ x11-proto/xproto
+"
+
+src_prepare() {
+ sed -i -e 's|$(LDADD) $(LDFLAGS)|$(LDFLAGS) $(LDADD)|g' Makefile || die
+}
+
+src_configure() {
+ use debug && append-cflags -DDEBUG
+}
+
+src_compile() {
+ emake CC=$(tc-getCC) proto normal
+}
+
+src_install() {
+ dobin ${PN}
+ doman ${PN}.1
+}
diff --git a/x11-wm/goomwwm/metadata.xml b/x11-wm/goomwwm/metadata.xml
new file mode 100644
index 000000000000..704d8f91190c
--- /dev/null
+++ b/x11-wm/goomwwm/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+<email>jer@gentoo.org</email>
+<name>Jeroen Roovers</name>
+</maintainer>
+</pkgmetadata>
+
diff --git a/x11-wm/herbstluftwm/Manifest b/x11-wm/herbstluftwm/Manifest
new file mode 100644
index 000000000000..5439a42d5ac7
--- /dev/null
+++ b/x11-wm/herbstluftwm/Manifest
@@ -0,0 +1 @@
+DIST herbstluftwm-0.6.2.tar.gz 224191 SHA256 a89f5c397aee7f1aa3b39dd53bc67e282679f02f1c0bf3c33c41a608e217f0ac SHA512 3fa70a285e21c9e0717f3301227b2fcc578e819c50d2bf380311253db2f5c864d6e42020b8b278ba4e555b5d75e0572144e06c0e8f2a395155415a4902a95421 WHIRLPOOL 1a70cd8728c1a32ac429af5eff7d15b2d6744cd494ce1a434e49213ac747346c39956d459c4abc5c5ff4687ee2276c39911638c47e363e7103c52330ba875b71
diff --git a/x11-wm/herbstluftwm/herbstluftwm-0.6.2-r1.ebuild b/x11-wm/herbstluftwm/herbstluftwm-0.6.2-r1.ebuild
new file mode 100644
index 000000000000..6c576e50e04c
--- /dev/null
+++ b/x11-wm/herbstluftwm/herbstluftwm-0.6.2-r1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit toolchain-funcs bash-completion-r1
+
+if [[ ${PV} == 9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="git://git.cs.fau.de/hlwm"
+ EXTRA_DEPEND="app-text/asciidoc"
+else
+ SRC_URI="http://herbstluftwm.org/tarballs/${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+ EXTRA_DEPEND=""
+fi
+
+DESCRIPTION="A manual tiling window manager for X"
+HOMEPAGE="http://herbstluftwm.org"
+
+LICENSE="BSD-2"
+SLOT="0"
+IUSE="examples xinerama zsh-completion"
+
+CDEPEND=">=dev-libs/glib-2.24:2
+ x11-libs/libX11
+ x11-libs/libXext
+ xinerama? ( x11-libs/libXinerama )"
+RDEPEND="${CDEPEND}
+ app-shells/bash
+ zsh-completion? ( app-shells/zsh )"
+DEPEND="${CDEPEND}
+ ${EXTRA_DEPEND}
+ virtual/pkgconfig"
+
+src_compile() {
+ emake CC="$(tc-getCC)" LD="$(tc-getCC)" COLOR=0 VERBOSE= \
+ $(use xinerama || echo XINERAMAFLAGS= XINERAMALIBS= )
+}
+
+src_install() {
+ dobin herbstluftwm herbstclient
+ dodoc BUGS MIGRATION NEWS README
+
+ doman doc/{herbstluftwm,herbstclient}.1
+
+ exeinto /etc/xdg/herbstluftwm
+ doexe share/{autostart,panel.sh,restartpanels.sh}
+
+ insinto /usr/share/xsessions
+ doins share/herbstluftwm.desktop
+
+ newbashcomp share/herbstclient-completion herbstclient
+
+ if use zsh-completion ; then
+ insinto /usr/share/zsh/site-functions
+ doins share/_herbstclient
+ fi
+
+ if use examples ; then
+ exeinto /usr/share/doc/${PF}/examples
+ doexe scripts/*.sh
+ docinto examples
+ dodoc scripts/README
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/x11-wm/herbstluftwm/herbstluftwm-9999.ebuild b/x11-wm/herbstluftwm/herbstluftwm-9999.ebuild
new file mode 100644
index 000000000000..e63f775e5db1
--- /dev/null
+++ b/x11-wm/herbstluftwm/herbstluftwm-9999.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit toolchain-funcs bash-completion-r1
+
+if [[ ${PV} == 9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="git://git.cs.fau.de/hlwm"
+ EXTRA_DEPEND="app-text/asciidoc"
+else
+ SRC_URI="http://herbstluftwm.org/tarballs/${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+ EXTRA_DEPEND=""
+fi
+
+DESCRIPTION="A manual tiling window manager for X"
+HOMEPAGE="http://herbstluftwm.org"
+
+LICENSE="BSD-2"
+SLOT="0"
+IUSE="examples xinerama zsh-completion"
+
+CDEPEND=">=dev-libs/glib-2.24:2
+ x11-libs/libX11
+ x11-libs/libXext
+ xinerama? ( x11-libs/libXinerama )"
+RDEPEND="${CDEPEND}
+ app-shells/bash
+ zsh-completion? ( app-shells/zsh )"
+DEPEND="${CDEPEND}
+ ${EXTRA_DEPEND}
+ virtual/pkgconfig"
+
+src_compile() {
+ emake CC="$(tc-getCC)" LD="$(tc-getCC)" COLOR=0 VERBOSE= \
+ $(use xinerama || echo XINERAMAFLAGS= XINERAMALIBS= )
+}
+
+src_install() {
+ dobin herbstluftwm herbstclient
+ dodoc BUGS MIGRATION NEWS README.md
+
+ doman doc/{herbstluftwm,herbstclient}.1
+
+ exeinto /etc/xdg/herbstluftwm
+ doexe share/{autostart,panel.sh,restartpanels.sh}
+
+ insinto /usr/share/xsessions
+ doins share/herbstluftwm.desktop
+
+ newbashcomp share/herbstclient-completion herbstclient
+
+ if use zsh-completion ; then
+ insinto /usr/share/zsh/site-functions
+ doins share/_herbstclient
+ fi
+
+ if use examples ; then
+ exeinto /usr/share/doc/${PF}/examples
+ doexe scripts/*.sh
+ docinto examples
+ dodoc scripts/README
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/x11-wm/herbstluftwm/metadata.xml b/x11-wm/herbstluftwm/metadata.xml
new file mode 100644
index 000000000000..157326a7e891
--- /dev/null
+++ b/x11-wm/herbstluftwm/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>radhermit@gentoo.org</email>
+ <name>Tim Harder</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/x11-wm/i3/Manifest b/x11-wm/i3/Manifest
new file mode 100644
index 000000000000..4425d538817f
--- /dev/null
+++ b/x11-wm/i3/Manifest
@@ -0,0 +1,3 @@
+DIST i3-4.10.3.tar.bz2 941295 SHA256 9290857bd5a4d1a792544d763bedd53104a683f3e721b5631811827a388107d3 SHA512 914456663158d04868fc15820e3ca3c12663f6af120d2e249b0e2930214808cf19d719acbef9aed2931a322973e92e0da85a2e1d72a135e5894e81f14f2889f1 WHIRLPOOL ddca44ea2a9aeae140df26945860279987690bc7bedcb4395da2c1d52593081934f7cb2d819ff2d575eca855c29078a4155363fe0b116853ce637b86a4700d9e
+DIST i3-4.8.tar.bz2 939690 SHA256 502c34290f239780bb40352191f0500e8f35d2446eddb573c67c27873d6a1b6b SHA512 fd6f92da857246119f1ae710b6c5168128fa2da5eae8308550b1b9c75879f060cac8246897333f3d67e18de36828a11dd12b4ccee9bd6cd6ad32e2b44c50b43e WHIRLPOOL 6c6288cb66ffdbf225df0dfcdc4f540cd36d7c8333a9f9d9c363cb6580d6a7c1ca0deb227a8f46ac907f2afc6e4e46efc448a51f0764a167bb9639956beae4ef
+DIST i3-4.9.1.tar.bz2 939630 SHA256 b70deff027c7d05276c9646e53faeeeccdde706370b9b337a633bed85b16dc43 SHA512 7a8f71dd944faae426a2239b8bf12ea1cfc83a95c49fcb64ded8321ef302f3277af7d2ecd84d99cef47aba73e5a1091f94e37e9ed2af78c4722ffee507477c90 WHIRLPOOL 15cd2722beaeef642815edd44ff189ff0d003fefbff71c067b94a65dadb55cd15dd1a142a37499fa55cc80424dbdc74cb979c8998d740addcc492eaf025e467f
diff --git a/x11-wm/i3/files/i3-4.6-missing_include.patch b/x11-wm/i3/files/i3-4.6-missing_include.patch
new file mode 100644
index 000000000000..77147d264e18
--- /dev/null
+++ b/x11-wm/i3/files/i3-4.6-missing_include.patch
@@ -0,0 +1,15 @@
+Include float.h for DBL_EPSILON
+
+https://bugs.gentoo.org/show_bug.cgi?id=480272
+
+Patch was written by Jeroen Roovers <jer@gentoo.org>
+--- a/src/handlers.c
++++ b/src/handlers.c
+@@ -13,6 +13,7 @@
+ #include "all.h"
+
+ #include <time.h>
++#include <float.h>
+ #include <sys/time.h>
+ #include <xcb/randr.h>
+ #include <X11/XKBlib.h>
diff --git a/x11-wm/i3/files/i3-4.7.2-cflags.patch b/x11-wm/i3/files/i3-4.7.2-cflags.patch
new file mode 100644
index 000000000000..ed9256f441df
--- /dev/null
+++ b/x11-wm/i3/files/i3-4.7.2-cflags.patch
@@ -0,0 +1,16 @@
+Respect CFLAGS in linking command
+
+https://bugs.gentoo.org/show_bug.cgi?id=508426
+
+Patch written by Julian Ospald <hasufell@gentoo.org>
+--- a/src/i3.mk
++++ b/src/i3.mk
+@@ -64,7 +64,7 @@ i3-config-parser.stamp: generate-command-parser.pl parser-specs/config.spec
+
+ i3: libi3.a $(i3_OBJECTS)
+ echo "[i3] Link i3"
+- $(CC) $(I3_LDFLAGS) $(LDFLAGS) -o $@ $(filter-out libi3.a,$^) $(LIBS) $(i3_LIBS)
++ $(CC) $(CFLAGS) $(I3_LDFLAGS) $(LDFLAGS) -o $@ $(filter-out libi3.a,$^) $(LIBS) $(i3_LIBS)
+
+ install-i3: i3
+ echo "[i3] Install"
diff --git a/x11-wm/i3/files/i3-4.7.2-parallel_make.patch b/x11-wm/i3/files/i3-4.7.2-parallel_make.patch
new file mode 100644
index 000000000000..8e6eee75a938
--- /dev/null
+++ b/x11-wm/i3/files/i3-4.7.2-parallel_make.patch
@@ -0,0 +1,45 @@
+Fix parallel build
+
+https://bugs.gentoo.org/show_bug.cgi?id=508304
+
+Patch written by Julian Ospald <hasufell@gentoo.org>
+
+--- a/src/i3.mk
++++ b/src/i3.mk
+@@ -1,4 +1,4 @@
+-ALL_TARGETS += i3
++ALL_TARGETS += i3 test-tools
+ INSTALL_TARGETS += install-i3
+ CLEAN_TARGETS += clean-i3
+
+@@ -36,20 +36,22 @@ src/%.o: src/%.c $(i3_HEADERS_DEP)
+ echo "[i3] CC $<"
+ $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) $(PCH_FLAGS) -c -o $@ ${canonical_path}/$<
+
+-# This target compiles the command parser twice:
+-# Once with -DTEST_PARSER, creating a stand-alone executable used for tests,
+-# and once as an object file for i3.
++test-tools: src/test.commands_parser src/test.config_parser
++
++src/test.commands_parser: src/commands_parser.c $(i3_HEADERS_DEP) i3-command-parser.stamp libi3.a
++ echo "[i3] Link test.commands_parser"
++ $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) $(I3_LDFLAGS) $(LDFLAGS) -DTEST_PARSER -g -o test.commands_parser $< $(LIBS) $(i3_LIBS)
++
++src/test.config_parser: src/config_parser.c $(i3_HEADERS_DEP) i3-config-parser.stamp libi3.a
++ echo "[i3] Link test.config_parser"
++ $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) $(I3_LDFLAGS) $(LDFLAGS) -DTEST_PARSER -g -o test.config_parser $< $(LIBS) $(i3_LIBS)
++
+ src/commands_parser.o: src/commands_parser.c $(i3_HEADERS_DEP) i3-command-parser.stamp
+ echo "[i3] CC $<"
+- $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) $(I3_LDFLAGS) $(LDFLAGS) -DTEST_PARSER -g -o test.commands_parser $< $(LIBS) $(i3_LIBS)
+ $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) -c -o $@ ${canonical_path}/$<
+
+-# This target compiles the command parser twice:
+-# Once with -DTEST_PARSER, creating a stand-alone executable used for tests,
+-# and once as an object file for i3.
+ src/config_parser.o: src/config_parser.c $(i3_HEADERS_DEP) i3-config-parser.stamp
+ echo "[i3] CC $<"
+- $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) $(I3_LDFLAGS) $(LDFLAGS) -DTEST_PARSER -g -o test.config_parser $< $(LIBS) $(i3_LIBS)
+ $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) -c -o $@ ${canonical_path}/$<
+
+ i3-command-parser.stamp: generate-command-parser.pl parser-specs/commands.spec
diff --git a/x11-wm/i3/i3-4.10.3.ebuild b/x11-wm/i3/i3-4.10.3.ebuild
new file mode 100644
index 000000000000..37b6435ca87f
--- /dev/null
+++ b/x11-wm/i3/i3-4.10.3.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="An improved dynamic tiling window manager"
+HOMEPAGE="http://i3wm.org/"
+SRC_URI="http://i3wm.org/downloads/${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="+pango"
+
+CDEPEND="dev-libs/libev
+ dev-libs/libpcre
+ >=dev-libs/yajl-2.0.3
+ x11-libs/libxcb[xkb]
+ x11-libs/libxkbcommon[X]
+ x11-libs/startup-notification
+ x11-libs/xcb-util
+ x11-libs/xcb-util-cursor
+ x11-libs/xcb-util-keysyms
+ x11-libs/xcb-util-wm
+ pango? (
+ >=x11-libs/pango-1.30.0[X]
+ >=x11-libs/cairo-1.12.2[X,xcb]
+ )"
+DEPEND="${CDEPEND}
+ virtual/pkgconfig"
+RDEPEND="${CDEPEND}
+ dev-lang/perl
+ dev-perl/AnyEvent-I3
+ dev-perl/JSON-XS"
+
+DOCS=( RELEASE-NOTES-${PV} )
+
+src_prepare() {
+ if ! use pango; then
+ sed -i common.mk -e '/PANGO/d' || die
+ fi
+
+ cat <<- EOF > "${T}"/i3wm
+ #!/bin/sh
+ exec /usr/bin/i3
+ EOF
+
+ epatch_user #471716
+}
+
+src_compile() {
+ emake V=1 CC="$(tc-getCC)" AR="$(tc-getAR)"
+}
+
+src_install() {
+ default
+ dohtml -r docs/*
+ doman man/*.1
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/i3wm
+}
+
+pkg_postinst() {
+ einfo "There are several packages that you may find useful with ${PN} and"
+ einfo "their usage is suggested by the upstream maintainers, namely:"
+ einfo " x11-misc/dmenu"
+ einfo " x11-misc/i3status"
+ einfo " x11-misc/i3lock"
+ einfo "Please refer to their description for additional info."
+}
diff --git a/x11-wm/i3/i3-4.8.ebuild b/x11-wm/i3/i3-4.8.ebuild
new file mode 100644
index 000000000000..e9a2786222d3
--- /dev/null
+++ b/x11-wm/i3/i3-4.8.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="An improved dynamic tiling window manager"
+HOMEPAGE="http://i3wm.org/"
+SRC_URI="http://i3wm.org/downloads/${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm x86"
+IUSE="+pango"
+
+CDEPEND="dev-libs/libev
+ dev-libs/libpcre
+ >=dev-libs/yajl-2.0.3
+ x11-libs/libxcb[xkb]
+ x11-libs/libX11
+ x11-libs/startup-notification
+ x11-libs/xcb-util
+ x11-libs/xcb-util-cursor
+ x11-libs/xcb-util-keysyms
+ x11-libs/xcb-util-wm
+ pango? (
+ >=x11-libs/pango-1.30.0[X]
+ >=x11-libs/cairo-1.12.2[X,xcb]
+ )"
+DEPEND="${CDEPEND}
+ virtual/pkgconfig"
+RDEPEND="${CDEPEND}
+ dev-lang/perl
+ dev-perl/AnyEvent-I3
+ dev-perl/JSON-XS"
+
+DOCS=( RELEASE-NOTES-${PV} )
+
+src_prepare() {
+ if ! use pango; then
+ sed -i common.mk -e '/PANGO/d' || die
+ fi
+
+ cat <<- EOF > "${T}"/i3wm
+ #!/bin/sh
+ exec /usr/bin/i3
+ EOF
+
+ epatch_user #471716
+}
+
+src_compile() {
+ emake V=1 CC="$(tc-getCC)" AR="$(tc-getAR)"
+}
+
+src_install() {
+ default
+ dohtml -r docs/*
+ doman man/*.1
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/i3wm
+}
+
+pkg_postinst() {
+ einfo "There are several packages that you may find useful with ${PN} and"
+ einfo "their usage is suggested by the upstream maintainers, namely:"
+ einfo " x11-misc/dmenu"
+ einfo " x11-misc/i3status"
+ einfo " x11-misc/i3lock"
+ einfo "Please refer to their description for additional info."
+}
diff --git a/x11-wm/i3/i3-4.9.1.ebuild b/x11-wm/i3/i3-4.9.1.ebuild
new file mode 100644
index 000000000000..37b6435ca87f
--- /dev/null
+++ b/x11-wm/i3/i3-4.9.1.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="An improved dynamic tiling window manager"
+HOMEPAGE="http://i3wm.org/"
+SRC_URI="http://i3wm.org/downloads/${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="+pango"
+
+CDEPEND="dev-libs/libev
+ dev-libs/libpcre
+ >=dev-libs/yajl-2.0.3
+ x11-libs/libxcb[xkb]
+ x11-libs/libxkbcommon[X]
+ x11-libs/startup-notification
+ x11-libs/xcb-util
+ x11-libs/xcb-util-cursor
+ x11-libs/xcb-util-keysyms
+ x11-libs/xcb-util-wm
+ pango? (
+ >=x11-libs/pango-1.30.0[X]
+ >=x11-libs/cairo-1.12.2[X,xcb]
+ )"
+DEPEND="${CDEPEND}
+ virtual/pkgconfig"
+RDEPEND="${CDEPEND}
+ dev-lang/perl
+ dev-perl/AnyEvent-I3
+ dev-perl/JSON-XS"
+
+DOCS=( RELEASE-NOTES-${PV} )
+
+src_prepare() {
+ if ! use pango; then
+ sed -i common.mk -e '/PANGO/d' || die
+ fi
+
+ cat <<- EOF > "${T}"/i3wm
+ #!/bin/sh
+ exec /usr/bin/i3
+ EOF
+
+ epatch_user #471716
+}
+
+src_compile() {
+ emake V=1 CC="$(tc-getCC)" AR="$(tc-getAR)"
+}
+
+src_install() {
+ default
+ dohtml -r docs/*
+ doman man/*.1
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/i3wm
+}
+
+pkg_postinst() {
+ einfo "There are several packages that you may find useful with ${PN} and"
+ einfo "their usage is suggested by the upstream maintainers, namely:"
+ einfo " x11-misc/dmenu"
+ einfo " x11-misc/i3status"
+ einfo " x11-misc/i3lock"
+ einfo "Please refer to their description for additional info."
+}
diff --git a/x11-wm/i3/i3-9999.ebuild b/x11-wm/i3/i3-9999.ebuild
new file mode 100644
index 000000000000..ff4b0c71a417
--- /dev/null
+++ b/x11-wm/i3/i3-9999.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs git-2
+
+DESCRIPTION="An improved dynamic tiling window manager"
+HOMEPAGE="http://i3wm.org/"
+SRC_URI=""
+EGIT_REPO_URI="git://github.com/i3/i3"
+EGIT_BRANCH="next"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS=""
+IUSE="+pango"
+
+CDEPEND="dev-lang/perl
+ dev-libs/libev
+ dev-libs/libpcre
+ >=dev-libs/yajl-2.0.3
+ x11-libs/libxcb[xkb]
+ x11-libs/libxkbcommon[X]
+ x11-libs/startup-notification
+ x11-libs/xcb-util
+ x11-libs/xcb-util-cursor
+ x11-libs/xcb-util-keysyms
+ x11-libs/xcb-util-wm
+ pango? (
+ >=x11-libs/pango-1.30.0[X]
+ >=x11-libs/cairo-1.12.2[X,xcb]
+ )"
+DEPEND="${CDEPEND}
+ app-text/asciidoc
+ virtual/pkgconfig"
+RDEPEND="${CDEPEND}
+ dev-perl/AnyEvent-I3
+ dev-perl/JSON-XS"
+
+src_prepare() {
+ if ! use pango; then
+ sed -i common.mk -e '/PANGO/d' || die
+ fi
+
+ cat <<- EOF > "${T}"/i3wm
+ #!/bin/sh
+ exec /usr/bin/i3
+ EOF
+
+ epatch_user #471716
+}
+
+src_compile() {
+ emake V=1 CC="$(tc-getCC)" AR="$(tc-getAR)"
+ emake mans
+}
+
+src_install() {
+ default
+ dohtml -r docs/*
+ doman man/*.1
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/i3wm
+}
+
+pkg_postinst() {
+ einfo "There are several packages that you may find useful with ${PN} and"
+ einfo "their usage is suggested by the upstream maintainers, namely:"
+ einfo " x11-misc/dmenu"
+ einfo " x11-misc/i3status"
+ einfo " x11-misc/i3lock"
+ einfo "Please refer to their description for additional info."
+}
diff --git a/x11-wm/i3/metadata.xml b/x11-wm/i3/metadata.xml
new file mode 100644
index 000000000000..ea839bceb0e3
--- /dev/null
+++ b/x11-wm/i3/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>xarthisius@gentoo.org</email>
+ <name>Kacper Kowalik</name>
+ </maintainer>
+ <maintainer>
+ <email>hasufell@gentoo.org</email>
+ <name>Julian Ospald</name>
+ <description>Maintains the live ebuild.</description>
+ </maintainer>
+ <use>
+ <flag name="pango">Use <pkg>x11-libs/pango</pkg> to render text in order to support fonts which have more glyphs (e.g. Kanji). See RELEASE-NOTES for more information</flag>
+ </use>
+</pkgmetadata>
diff --git a/x11-wm/icewm/Manifest b/x11-wm/icewm/Manifest
new file mode 100644
index 000000000000..ec8f36d74ca5
--- /dev/null
+++ b/x11-wm/icewm/Manifest
@@ -0,0 +1,3 @@
+DIST icewm-1.3.10.tar.gz 929941 SHA256 dae6aa00c88f700537cc841cbd233ea2905e756f6274f9ebd52020f782502706 SHA512 96834d5ed2d693451ef071d574b4f553431183feefc8c6db97d46666ec086e9ff8d4a1b0c0eaf60cfbb1398be653aad3a47a61b35a5354730c05b1ddfa61bf16 WHIRLPOOL a085604cd70ef0d10ff3a9c9e91b2572f47750e2a5627c1d8feeadd3d9024423b75ffe9339329c59ade855ebd1046d1c18757994ce38aef0fdfca03dcb47e97d
+DIST icewm-1.3.8.tar.gz 905680 SHA256 17588d9e0bbbb23587bc04c83da9dd94fd4da6894ecfee6d7f3ed50d780dcd18 SHA512 ce9bf3e736a2f3fad4bbf731647b4e4ad0168cd2c4af66b1c43beef9ceeee39d14909714d2fc73ab13f6c285a74dfe31fffc9677ae8bd2d1077716cd6d6afb72 WHIRLPOOL 5bb0f6fa830ea10978bb8fd31805596c849a370d619626736e1218e844de72e142ed1aaa87b2f2aeb40603fcf2cfaa88ffae242c726ae1151045c6a792d5cf6c
+DIST icewm-1.3.9.tar.gz 890170 SHA256 2d47f8cda48a91ac14fb20890c2df0f304cf8278adf50c3e4070ef68b61a687d SHA512 9c28b004d3a13470e61a3ecbea489d67134b5d1651d84677e8ab0fb732b630d30b7be047553833c818a0ae05841ec808d37d7d50e21e5a562d407cdc74b4943e WHIRLPOOL 8ecba1325da50655524b414280bf4c87f7bcf4c5d0e7edb0df8c6b341680443f961eddf7fd653ac75229aea88100ba8c06b8268196b48f63f6683231f972eb97
diff --git a/x11-wm/icewm/files/IceWM.desktop b/x11-wm/icewm/files/IceWM.desktop
new file mode 100644
index 000000000000..087384ee1308
--- /dev/null
+++ b/x11-wm/icewm/files/IceWM.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=IceWM
+Comment=This session logs you into IceWM
+Exec=icewm-session
+TryExec=icewm-session
+# no icon yet, only the top three are currently used
+Icon=
+Type=Application
diff --git a/x11-wm/icewm/files/icewm b/x11-wm/icewm/files/icewm
new file mode 100755
index 000000000000..90905960d1a2
--- /dev/null
+++ b/x11-wm/icewm/files/icewm
@@ -0,0 +1,2 @@
+#!/bin/sh
+/usr/bin/icewm-session
diff --git a/x11-wm/icewm/files/icewm-1.3.10-menu.patch b/x11-wm/icewm/files/icewm-1.3.10-menu.patch
new file mode 100644
index 000000000000..721a15d25ee3
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-1.3.10-menu.patch
@@ -0,0 +1,22 @@
+--- icewm-1.3.10/lib/menu.in
++++ icewm-1.3.10/lib/menu.in
+@@ -4,14 +4,9 @@
+ # since modifications to this file will be discarded when you
+ # (re)install icewm.
+ #
+-prog xterm xterm xterm
+-prog rxvt xterm rxvt -bg black -cr green -fg white -C -fn 9x15 -sl 500
+-prog fte fte fte
+-prog NEdit nedit nedit
+-prog Mozilla mozilla mozilla
+-prog XChat xchat xchat
+-prog Gimp gimp gimp
++prog xterm /usr/share/icons/gnome/16x16/apps/terminal.png xterm
++"Web browser" /usr/share/icons/gnome/16x16/apps/web-browser.png xdg-open about:blank
+ separator
+-menuprog "Desktop Apps" folder icewm-menu-fdo
+-menufile Programs folder programs
+-menufile Tool_bar folder toolbar
++prog "Rebuild program menu" /usr/share/icons/gnome/16x16/actions/edit-find-replace.png /usr/share/icewm/startup
++separator
++menufile Programs folder programs.autogen
diff --git a/x11-wm/icewm/files/icewm-1.3.7-dso.patch b/x11-wm/icewm/files/icewm-1.3.7-dso.patch
new file mode 100644
index 000000000000..55100d5f62a6
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-1.3.7-dso.patch
@@ -0,0 +1,10 @@
+--- configure.in.old 2011-11-23 15:44:52.121654867 +0200
++++ configure.in 2011-11-23 15:47:09.514411391 +0200
+@@ -494,6 +494,7 @@
+ AC_DEFINE(CONFIG_COREFONTS, 1, [Define to enable X11 core conts.])
+ features="${features} corefonts"
+ fi
++ CORE_LIBS="${CORE_LIBS} -lfontconfig"
+
+ dnl ============================================================= GUI Events ===
+ dnl
diff --git a/x11-wm/icewm/files/icewm-1.3.7-gcc44.patch b/x11-wm/icewm/files/icewm-1.3.7-gcc44.patch
new file mode 100644
index 000000000000..d500f64004bc
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-1.3.7-gcc44.patch
@@ -0,0 +1,13 @@
+https://bugs.gentoo.org/show_bug.cgi?id=376451
+
+--- a/src/wmapp.cc
++++ b/src/wmapp.cc
+@@ -337,7 +337,7 @@
+ char ** fontPath(XGetFontPath(xapp->display(), &ndirs));
+
+ char ** newFontPath = new char *[ndirs + 1];
+- newFontPath[ndirs] = fontsdir;
++ newFontPath[ndirs] = (char *)fontsdir;
+
+ if (fontPath)
+ memcpy(newFontPath, fontPath, ndirs * sizeof (char *));
diff --git a/x11-wm/icewm/files/icewm-1.3.7-menuiconsize.patch b/x11-wm/icewm/files/icewm-1.3.7-menuiconsize.patch
new file mode 100644
index 000000000000..d051d5bc5f19
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-1.3.7-menuiconsize.patch
@@ -0,0 +1,73 @@
+diff -Naur icewm-1.3.7.bak/src/yicon.cc icewm-1.3.7/src/yicon.cc
+--- icewm-1.3.7.bak/src/yicon.cc 2010-10-31 15:09:36.000000000 +0100
++++ icewm-1.3.7/src/yicon.cc 2011-11-07 19:41:52.841910531 +0100
+@@ -270,6 +270,10 @@
+ iconCache.getItem(0)->removeFromCache();
+ }
+
++int YIcon::menuSize() {
++ return menuIconSize;
++}
++
+ int YIcon::smallSize() {
+ return smallIconSize;
+ }
+diff -Naur icewm-1.3.7.bak/src/yicon.h icewm-1.3.7/src/yicon.h
+--- icewm-1.3.7.bak/src/yicon.h 2010-10-31 15:09:36.000000000 +0100
++++ icewm-1.3.7/src/yicon.h 2011-11-07 19:41:28.555296033 +0100
+@@ -25,6 +25,7 @@
+ bool isCached() { return fCached; }
+ void setCached(bool cached) { fCached = cached; }
+
++ static int menuSize();
+ static int smallSize();
+ static int largeSize();
+ static int hugeSize();
+diff -Naur icewm-1.3.7.bak/src/ymenu.cc icewm-1.3.7/src/ymenu.cc
+--- icewm-1.3.7.bak/src/ymenu.cc 2010-10-31 15:09:36.000000000 +0100
++++ icewm-1.3.7/src/ymenu.cc 2011-11-07 19:42:40.498474049 +0100
+@@ -153,8 +153,8 @@
+
+ #ifndef LITE
+ if (getItem(selItem)->getIcon() != null &&
+- YIcon::smallSize() > h)
+- h = YIcon::smallSize();
++ YIcon::menuSize() > h)
++ h = YIcon::menuSize();
+ #endif
+
+ if (x <= int(width() - h - 4))
+@@ -1023,8 +1023,8 @@
+ mitem->getIcon()->draw(g,
+ l + 1 + delta, t + delta + top + pad +
+ (eh - top - pad * 2 - bottom -
+- YIcon::smallSize()) / 2,
+- YIcon::smallSize());
++ YIcon::menuSize()) / 2,
++ YIcon::menuSize());
+ #endif
+ }
+
+diff -Naur icewm-1.3.7.bak/src/ymenuitem.cc icewm-1.3.7/src/ymenuitem.cc
+--- icewm-1.3.7.bak/src/ymenuitem.cc 2010-10-31 15:09:36.000000000 +0100
++++ icewm-1.3.7/src/ymenuitem.cc 2011-11-07 19:50:04.458316916 +0100
+@@ -86,8 +86,8 @@
+ int ih = fontHeight;
+
+ #ifndef LITE
+- if (YIcon::smallSize() > ih)
+- ih = YIcon::smallSize();
++ if (YIcon::menuSize() > ih)
++ ih = YIcon::menuSize();
+ #endif
+
+ if (wmLook == lookWarp4 || wmLook == lookWin95) {
+@@ -123,7 +123,7 @@
+ return 0;
+ #else
+ ref<YIcon> icon = getIcon();
+- return icon != null ? YIcon::smallSize(): 0;
++ return icon != null ? YIcon::menuSize(): 0;
+ #endif
+ }
+
diff --git a/x11-wm/icewm/files/icewm-1.3.7-thermal.patch b/x11-wm/icewm/files/icewm-1.3.7-thermal.patch
new file mode 100644
index 000000000000..f6b2cf71f0f5
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-1.3.7-thermal.patch
@@ -0,0 +1,41 @@
+diff -uprN a/src/acpustatus.cc b/src/acpustatus.cc
+--- a/src/acpustatus.cc 2010-10-31 15:09:36.000000000 +0100
++++ b/src/acpustatus.cc 2013-01-17 21:12:19.085715083 +0100
+@@ -315,6 +315,37 @@ int CPUStatus::getAcpiTemp(char *tempbuf
+ }
+ closedir(dir);
+ }
++ else if ((dir = opendir("/sys/class/thermal")) != NULL) {
++ struct dirent *de;
++
++ while ((de = readdir(dir)) != NULL) {
++
++ int fd, seglen;
++
++ if (strcmp(de->d_name, ".") == 0 || strcmp(de->d_name, "..") == 0)
++ continue;
++
++ sprintf(namebuf, "/sys/class/thermal/%s/temp", de->d_name);
++ fd = open(namebuf, O_RDONLY);
++ if (fd != -1) {
++ int len = read(fd, buf, sizeof(buf) - 1);
++ buf[len - 4] = '\0';
++ seglen = strlen(buf) + 4;
++ if (retbuflen + seglen >= buflen) {
++ retbuflen = -retbuflen;
++ close(fd);
++ closedir(dir);
++ break;
++ }
++ retbuflen += seglen;
++ strcat(tempbuf, " ");
++ strncat(tempbuf, buf, seglen);
++ strcat(tempbuf, " C");
++ close(fd);
++ }
++ }
++ closedir(dir);
++ }
+ return retbuflen;
+ }
+
diff --git a/x11-wm/icewm/files/icewm-1.3.8-build-fixes.patch b/x11-wm/icewm/files/icewm-1.3.8-build-fixes.patch
new file mode 100644
index 000000000000..cec27a79ad0a
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-1.3.8-build-fixes.patch
@@ -0,0 +1,113 @@
+--- icewm-1.3.8/Makefile.in
++++ icewm-1.3.8/Makefile.in
+@@ -35,7 +35,7 @@
+
+ ################################################################################
+
+-BINFILES = @BINFILES@ icewm-set-gnomewm
++BINFILES = @BINFILES@ "$(srcdir)/icewm-set-gnomewm"
+ LIBFILES = lib/preferences lib/winoptions lib/keys \
+ lib/menu lib/toolbar # lib/programs
+ DOCFILES = README BUGS CHANGES COPYING AUTHORS INSTALL VERSION icewm.lsm
+@@ -83,21 +83,23 @@
+ @echo ------------------------------------------
+ @echo "Installing binaries in $(DESTDIR)$(BINDIR)"
+ @$(INSTALLDIR) "$(DESTDIR)$(BINDIR)"
++#generated files, relative to the build directory
+ @for bin in $(BINFILES); do \
+ $(INSTALLBIN) "$${bin}" "$(DESTDIR)$(BINDIR)"; \
+ done
+
+ @echo "Installing presets and icons in $(DESTDIR)$(LIBDIR)"
+ @$(INSTALLDIR) "$(DESTDIR)$(LIBDIR)"
++# data files from the source directory
+ #-@$(INSTALLDIR) "$(DESTDIR)$(CFGDIR)"
+ @for lib in $(LIBFILES); do \
+- $(INSTALLLIB) "$${lib}" "$(DESTDIR)$(LIBDIR)"; \
++ $(INSTALLLIB) "$(top_srcdir)/$${lib}" "$(DESTDIR)$(LIBDIR)"; \
+ done
+
+ @for xpmdir in $(XPMDIRS); do \
+- if test -d "lib/$${xpmdir}"; then \
++ if test -d "$(top_srcdir)/lib/$${xpmdir}"; then \
+ $(INSTALLDIR) "$(DESTDIR)$(LIBDIR)/$${xpmdir}"; \
+- for pixmap in "lib/$${xpmdir}/"*.xpm; do \
++ for pixmap in "$(top_srcdir)/lib/$${xpmdir}/"*.xpm; do \
+ $(INSTALLLIB) "$${pixmap}" "$(DESTDIR)$(LIBDIR)/$${xpmdir}"; \
+ done; \
+ fi; \
+--- icewm-1.3.8/po/Makefile.in
++++ icewm-1.3.8/po/Makefile.in
+@@ -20,6 +20,7 @@
+ XGETTEXT = @XGETTEXT@
+ MSGMERGE = @MSGMERGE@
+ MSGFMT = @MSGFMT@
++VPATH = .:po:@srcdir@
+
+ .SUFFIXES:
+ .SUFFIXES: .po .mo
+--- icewm-1.3.8/src/Makefile.in
++++ icewm-1.3.8/src/Makefile.in
+@@ -11,7 +11,7 @@
+
+ CXX = @CXX@
+ HOSTCXX = @HOSTCXX@
+-LD = @CXX_LINK@
++LD = gcc
+ HOSTLD = @HOSTCXX_LINK@
+ EXEEXT = @EXEEXT@
+
+@@ -32,12 +32,12 @@
+ -DICEWMBGEXE='"icewmbg$(EXEEXT)"' \
+ -DICESMEXE='"icewm-session$(EXEEXT)"' \
+ -DICEHELPEXE='"icehelp$(EXEEXT)"' \
+- -DICEHELPIDX='"$(DOCDIR)/icewm-$(VERSION)/icewm.html"'
++ -DICEHELPIDX='"$(DOCDIR)/icewm-common/icewm.html"'
+
+ CXXFLAGS = @CXXFLAGS@ $(DEBUG) $(DEFS) `pkg-config gdk-pixbuf-xlib-2.0 --cflags` \
+ @CORE_CFLAGS@ @IMAGE_CFLAGS@ @AUDIO_CFLAGS@ `pkg-config fontconfig --cflags`
+ LFLAGS = @LDFLAGS@
+-LIBS = @LIBS@ `pkg-config gdk-pixbuf-xlib-2.0 --libs`
++LIBS = @LIBS@ `pkg-config gdk-pixbuf-xlib-2.0 --libs` -lfontconfig -lm -lsupc++
+
+ CORE_LIBS = @CORE_LIBS@ `pkg-config fontconfig --libs`
+ IMAGE_LIBS = @IMAGE_LIBS@
+@@ -188,6 +188,8 @@
+ TESTCASES = @TESTCASES@
+ OBJECTS = @BASEOBJS@ @TESTOBJS@
+ BINARIES = @BASEBINS@ @TESTBINS@
++BASEOBJS = @BASEOBJS@
++VPATH = .:@srcdir@
+
+ ################################################################################
+
+@@ -205,7 +207,8 @@
+ @echo " CXX " $@
+ @$(CXX) $(CXXFLAGS) $(GCCDEP) -c $<
+
+-$(BINARIES):
++$(BINARIES): $(BASEOBJS)
++# @$(MAKE) --no-print-directory build-dep DEPLIST="$($(@:$(EXEEXT)=)_OBJS)"
+ @echo " LD " $@
+ @$(LD) -o $@ $($(@:$(EXEEXT)=)_OBJS) $(LFLAGS) $($(@:$(EXEEXT)=)_LFLAGS) $(LIBS) $($(@:$(EXEEXT)=)_LIBS)
+
+@@ -217,6 +220,8 @@
+ @echo " HOSTLD " $@
+ @$(HOSTLD) -o $@ $(genpref_OBJS)
+
++build-dep: $(DEPLIST)
++
+ ################################################################################
+
+ gnome2.o: gnome2.cc
+--- icewm-1.3.8/src/WinMgr.h
++++ icewm-1.3.8/src/WinMgr.h
+@@ -128,7 +128,7 @@
+ * this where WIN_WORKSPACE_COUNT comes into play.
+ */
+
+-#define WinWorkspaceInvalid (-1L)
++#define WinWorkspaceInvalid ((unsigned long)-1)
+
+ /* workspaces */
+ #define XA_WIN_WORKSPACES "_WIN_WORKSPACES"
diff --git a/x11-wm/icewm/files/icewm-1.3.8-deprecated.patch b/x11-wm/icewm/files/icewm-1.3.8-deprecated.patch
new file mode 100644
index 000000000000..b956180627bc
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-1.3.8-deprecated.patch
@@ -0,0 +1,12 @@
+--- icewm-1.3.8/src/base.h
++++ icewm-1.3.8/src/base.h
+@@ -2,7 +2,9 @@
+ #define __BASE_H
+
+ #if ( __GNUC__ == 3 && __GNUC_MINOR__ > 0 ) || __GNUC__ > 3
++#if ( __GNUC__ == 4 && __GNUC_MINOR__ > 7 ) || __GNUC__ > 3
+ #define _icewm_deprecated __attribute__((deprecated))
++#endif
+ #else
+ #define _icewm_deprecated
+ #endif
diff --git a/x11-wm/icewm/files/icewm-1.3.8-menu.patch b/x11-wm/icewm/files/icewm-1.3.8-menu.patch
new file mode 100644
index 000000000000..e4bab5c5ffc3
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-1.3.8-menu.patch
@@ -0,0 +1,23 @@
+--- icewm-1.3.8/lib/menu.in
++++ icewm-1.3.8/lib/menu.in
+@@ -4,15 +4,9 @@
+ # since modifications to this file will be discarded when you
+ # (re)install icewm.
+ #
+-prog xterm xterm xterm
+-prog rxvt xterm rxvt -bg black -cr green -fg white -C -fn 9x15 -sl 500
+-prog fte fte fte
+-prog NEdit nedit nedit
+-prog Mozilla mozilla mozilla
+-prog XChat xchat xchat
+-prog Gimp gimp gimp
++prog xterm /usr/share/icons/gnome/16x16/apps/terminal.png xterm
++prog "Web browser" /usr/share/icons/gnome/16x16/apps/web-browser.png xdg-open about:blank
+ separator
+-menuprog Gnome folder icewm-menu-gnome2 --list @CONFIG_GNOME2_MENU_DIR@
+-menuprog KDE folder icewm-menu-gnome@GNOME_VER@ --list @CONFIG_KDE_MENU_DIR@
+-menufile Programs folder programs
+-menufile Tool_bar folder toolbar
++prog "Rebuild program menu" /usr/share/icons/gnome/16x16/actions/edit-find-replace.png /usr/share/icewm/startup
++separator
++menufile Programs folder programs.autogen
diff --git a/x11-wm/icewm/files/icewm-1.3.8-uclibc.patch b/x11-wm/icewm/files/icewm-1.3.8-uclibc.patch
new file mode 100644
index 000000000000..e790842faed8
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-1.3.8-uclibc.patch
@@ -0,0 +1,64 @@
+diff -Naur icewm-1.3.7.orig/configure.in icewm-1.3.7/configure.in
+--- icewm-1.3.7.orig/configure.in 2010-10-31 10:09:37.000000000 -0400
++++ icewm-1.3.7/configure.in 2013-10-19 06:20:22.947520430 -0400
+@@ -113,6 +113,7 @@
+ AC_CHECK_HEADERS(libgen.h) dnl -- basename() for FreeBSD
+ AC_CHECK_HEADERS(machine/apmvar.h)
+ AC_CHECK_HEADERS(machine/apm_bios.h)
++AC_CHECK_HEADERS(execinfo.h)
+
+ AC_CHECK_HEADERS(kstat.h,
+ [ CORE_LIBS="${CORE_LIBS} -lkstat"
+diff -Naur icewm-1.3.7.orig/src/acpustatus.cc icewm-1.3.7/src/acpustatus.cc
+--- icewm-1.3.7.orig/src/acpustatus.cc 2010-10-31 10:09:36.000000000 -0400
++++ icewm-1.3.7/src/acpustatus.cc 2013-10-19 06:20:18.355519888 -0400
+@@ -25,17 +25,12 @@
+ #include "sysdep.h"
+ #include "default.h"
+
+-#if defined(linux)
+-//#include <linux/kernel.h>
+-#include <sys/sysinfo.h>
+-#endif
+ #if defined(sun) && defined(SVR4)
+ #include <sys/loadavg.h>
+ #endif
+ #ifdef HAVE_KSTAT_H
+ #include <sys/resource.h>
+ #include <kstat.h>
+-#include <sys/sysinfo.h>
+ #endif
+
+ #ifdef HAVE_SYS_PARAM_H
+@@ -56,6 +51,10 @@
+ #include <dirent.h>
+ #include "intl.h"
+
++#if defined(linux) || defined(HAVE_KSTAT_H)
++#include <sys/sysinfo.h>
++#endif
++
+ #if (defined(linux) || defined(HAVE_KSTAT_H)) || defined(HAVE_SYSCTL_CP_TIME)
+
+ extern ref<YPixmap> taskbackPixmap;
+diff -Naur icewm-1.3.7.orig/src/misc.cc icewm-1.3.7/src/misc.cc
+--- icewm-1.3.7.orig/src/misc.cc 2010-10-31 10:09:36.000000000 -0400
++++ icewm-1.3.7/src/misc.cc 2013-10-19 06:20:22.947520430 -0400
+@@ -15,7 +15,7 @@
+ #include <libgen.h>
+ #endif
+
+-#ifdef linux
++#if defined(linux) && defined(HAVE_EXECINFO_H)
+ #include <execinfo.h>
+ #endif
+
+@@ -503,7 +503,7 @@
+ }
+
+ void show_backtrace() {
+-#ifdef linux
++#if defined(linux) && defined(HAVE_EXECINFO_H)
+ const char head[] = "\nbacktrace:\n";
+ const char tail[] = "end\n";
+ void *array[20];
diff --git a/x11-wm/icewm/files/icewm-1.3.9-fribidi.patch b/x11-wm/icewm/files/icewm-1.3.9-fribidi.patch
new file mode 100644
index 000000000000..91aa55c1f12d
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-1.3.9-fribidi.patch
@@ -0,0 +1,137 @@
+From 800fc7caa9728cebafee86d841ac23b6ffaa896b Mon Sep 17 00:00:00 2001
+From: Brian Bidulock <bidulock@openss7.org>
+Date: Wed, 5 Nov 2014 03:25:44 -0700
+Subject: [PATCH] fribidi support (gentoo icewm-1.3.9-fribidi.patch)
+
+ Also fixes several problems with the gentoo patch:
+
+ 1) the patch modifies CORE_CFLAGS and CORE_LIBS before they
+ are first defined, confusing later PKG_CONFIG([CORE], ...)
+ so I moved it later in configure.ac
+
+ 2) the patch uses the deprecated fribidi_log2vis, so I modified
+ src/yfontxft.cc to disabled deprecated symbols (because I
+ always test build with -Werror).
+
+ 3) the patch ignores the return value of fribidi_log2vis()
+ causing another warning which -Werror turns into an error.
+ Changed to "if (fribidi_log2vis(...)) ;" to disable that.
+
+ 4) fixed the configure.ac macro check for fribidi to only warn
+ when the library is not present but the feature has not
+ been disabled
+
+ 5) add fribidi to configure.ac features list shown at end of
+ ./configure run (added xrandr and xinerama too...)
+---
+ configure.ac | 17 +++++++++++++++--
+ src/yfontxft.cc | 47 +++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 62 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index dce4f1e..63d362f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -158,7 +158,8 @@ if test x$enable_xrandr != xno; then
+ PKG_CHECK_MODULES([XRANDR],[xrandr],[
+ CORE_CFLAGS="$XRANDR_CFLAGS $CORE_CFLAGS"
+ CORE_LIBS="$XRANDR_LIBS $CORE_LIBS"
+- AC_DEFINE([CONFIG_XRANDR],[1],[Define to enable XRANDR extension.])],
++ AC_DEFINE([CONFIG_XRANDR],[1],[Define to enable XRANDR extension.])
++ features="$features xrandr"],
+ [AC_MSG_WARN([XRANDR not supported.])])
+ fi
+
+@@ -270,10 +271,22 @@ if test x$enable_xinerama != xno ; then
+ PKG_CHECK_MODULES([XINERAMA],[xinerama],[
+ CORE_CFLAGS="$XINERAMA_CFLAGS $CORE_CFLAGS"
+ CORE_LIBS="$XINERAMA_LIBS $CORE_LIBS"
+- AC_DEFINE([XINERAMA],[1],[Define to enable Xinerama support.])],
++ AC_DEFINE([XINERAMA],[1],[Define to enable Xinerama support.])
++ features="$features xinerama"],
+ [AC_MSG_WARN([XINERAMA is not supported.])])
+ fi
+
++AC_ARG_ENABLE([fribidi],
++ AC_HELP_STRING([--disable-fribidi],[Disable right to left support.]))
++if test "$enable_fribidi" != "no" && test "$enable_i18n" != "no"; then
++ PKG_CHECK_MODULES([FRIBIDI], [fribidi],[
++ CORE_CFLAGS="$FRIBIDI_CFLAGS $CORE_CFLAGS"
++ CORE_LIBS="$FRIBIDI_LIBS $CORE_LIBS"
++ AC_DEFINE([CONFIG_FRIBIDI],[1],[Define to enable fribidi support.])
++ features="$features fribidi"],
++ [AC_MSG_WARN([FRIBIDI is not supported.])])
++fi
++
+ AC_ARG_ENABLE([prefs],
+ AC_HELP_STRING([--disable-prefs],[Disable configurable preferences.]))
+ if test x$enable_prefs = xno ; then
+diff --git a/src/yfontxft.cc b/src/yfontxft.cc
+index c200dc6..01b52f9 100644
+--- a/src/yfontxft.cc
++++ b/src/yfontxft.cc
+@@ -6,6 +6,18 @@
+ #include "ypaint.h"
+ #include "yxapp.h"
+ #include "intl.h"
++#include <stdio.h>
++
++#ifdef CONFIG_FRIBIDI
++ // remove deprecated warnings for now...
++ #include <fribidi/fribidi-config.h>
++ #if FRIBIDI_USE_GLIB+0
++ #include <glib.h>
++ #undef G_GNUC_DEPRECATED
++ #define G_GNUC_DEPRECATED
++ #endif
++ #include <fribidi/fribidi.h>
++#endif
+
+ /******************************************************************************/
+
+@@ -69,10 +81,45 @@ class XftGraphics {
+ char_t * str, size_t len)
+ {
+ XftColor *c = *g.color();
++
++#ifdef CONFIG_FRIBIDI
++
++#define STATIS_STRING_SIZE 256
++
++ // Based around upstream (1.3.2) patch with some optimization
++ // on my end. (reduce unnecessary memory allocation)
++ // - Gilboa
++
++ char_t static_str[STATIS_STRING_SIZE];
++ char_t *vis_str = static_str;
++
++ if (len >= STATIS_STRING_SIZE)
++ {
++ vis_str = new char_t[len+1];
++ if (!vis_str)
++ return;
++ }
++
++ FriBidiCharType pbase_dir = FRIBIDI_TYPE_N;
++ if (fribidi_log2vis(str, len, &pbase_dir, //input
++ vis_str, // output
++ NULL, NULL, NULL // "statistics" that we don't need
++ )) ;
++ str = vis_str;
++#endif
++
+ XftDrawString(g.handleXft(), c, font,
+ x - g.xorigin(),
+ y - g.yorigin(),
+ str, len);
++
++#ifdef CONFIG_FRIBIDI
++
++ if (vis_str != static_str)
++ delete[] str;
++
++#endif
++
+ }
+
+ static void textExtents(XftFont * font, char_t * str, size_t len,
diff --git a/x11-wm/icewm/files/icewm-1.3.9-uclibc.patch b/x11-wm/icewm/files/icewm-1.3.9-uclibc.patch
new file mode 100644
index 000000000000..5019b68f3d75
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-1.3.9-uclibc.patch
@@ -0,0 +1,64 @@
+diff -Naur a/configure.ac b/configure.ac
+--- a/configure.ac 2015-01-02 16:27:05.093088172 +0000
++++ b/configure.ac 2015-01-02 16:29:58.563094214 +0000
+@@ -75,6 +75,7 @@
+ AC_CHECK_HEADERS([libgen.h])
+ AC_CHECK_HEADERS([machine/apmvar.h])
+ AC_CHECK_HEADERS([machine/apm_bios.h])
++AC_CHECK_HEADERS([execinfo.h])
+
+ # Checks for typedefs, structures, and compiler characteristics.
+ AC_CHECK_HEADER_STDBOOL
+diff -Naur a/src/acpustatus.cc b/src/acpustatus.cc
+--- a/src/acpustatus.cc 2014-09-01 10:21:57.000000000 +0000
++++ b/src/acpustatus.cc 2015-01-02 16:28:35.738091329 +0000
+@@ -25,17 +25,12 @@
+ #include "sysdep.h"
+ #include "default.h"
+
+-#if defined(linux)
+-//#include <linux/kernel.h>
+-#include <sys/sysinfo.h>
+-#endif
+ #if defined(sun) && defined(SVR4)
+ #include <sys/loadavg.h>
+ #endif
+ #ifdef HAVE_KSTAT_H
+ #include <sys/resource.h>
+ #include <kstat.h>
+-#include <sys/sysinfo.h>
+ #endif
+
+ #ifdef HAVE_SYS_PARAM_H
+@@ -56,6 +51,10 @@
+ #include <dirent.h>
+ #include "intl.h"
+
++#if defined(linux) || defined(HAVE_KSTAT_H)
++#include <sys/sysinfo.h>
++#endif
++
+ #if (defined(linux) || defined(HAVE_KSTAT_H)) || defined(HAVE_SYSCTL_CP_TIME)
+
+ extern ref<YPixmap> taskbackPixmap;
+diff -Naur a/src/misc.cc b/src/misc.cc
+--- a/src/misc.cc 2014-09-01 10:21:57.000000000 +0000
++++ b/src/misc.cc 2015-01-02 16:31:00.722096379 +0000
+@@ -15,7 +15,7 @@
+ #include <libgen.h>
+ #endif
+
+-#ifdef linux
++#if defined(linux) && defined(HAVE_EXECINFO_H)
+ #include <execinfo.h>
+ #endif
+
+@@ -543,7 +543,7 @@
+ }
+
+ void show_backtrace() {
+-#ifdef linux
++#if defined(linux) && defined(HAVE_EXECINFO_H)
+ void *array[20];
+
+ fprintf(stderr, "\nbacktrace:\n");
diff --git a/x11-wm/icewm/files/icewm-defaults.patch b/x11-wm/icewm/files/icewm-defaults.patch
new file mode 100644
index 000000000000..72e5410db4fe
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-defaults.patch
@@ -0,0 +1,13 @@
+--- src/default.h.old 2011-11-23 18:04:22.429626938 +0200
++++ src/default.h 2011-11-23 18:04:38.416824083 +0200
+@@ -161,8 +161,8 @@
+ #endif
+
+ XSV(const char *, mailBoxPath, 0)
+-XSV(const char *, mailCommand, "xterm -name pine -title PINE -e pine")
+-XSV(const char *, mailClassHint, "pine.XTerm")
++XSV(const char *, mailCommand, "xterm -name alpine -title ALPINE -e alpine")
++XSV(const char *, mailClassHint, "alpine.XTerm")
+ XSV(const char *, newMailCommand, 0)
+ XSV(const char *, lockCommand, 0)
+ XSV(const char *, clockCommand, "xclock -name icewm -title Clock")
diff --git a/x11-wm/icewm/files/icewm-fribidi.patch b/x11-wm/icewm/files/icewm-fribidi.patch
new file mode 100644
index 000000000000..66691d78a3ff
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-fribidi.patch
@@ -0,0 +1,83 @@
+--- src/yfontxft.cc.old 2009-09-25 00:07:51.000000000 +0300
++++ src/yfontxft.cc 2009-09-25 00:18:09.000000000 +0300
+@@ -6,6 +6,11 @@
+ #include "ypaint.h"
+ #include "yxapp.h"
+ #include "intl.h"
++#include <stdio.h>
++
++#ifdef CONFIG_FRIBIDI
++ #include <fribidi/fribidi.h>
++#endif
+
+ /******************************************************************************/
+
+@@ -68,10 +73,45 @@
+ char_t * str, size_t len)
+ {
+ XftColor *c = *g.color();
++
++#ifdef CONFIG_FRIBIDI
++
++#define STATIS_STRING_SIZE 256
++
++ // Based around upstream (1.3.2) patch with some optimization
++ // on my end. (reduce unnecessary memory allocation)
++ // - Gilboa
++
++ char_t static_str[STATIS_STRING_SIZE];
++ char_t *vis_str = static_str;
++
++ if (len >= STATIS_STRING_SIZE)
++ {
++ vis_str = new char_t[len+1];
++ if (!vis_str)
++ return;
++ }
++
++ FriBidiCharType pbase_dir = FRIBIDI_TYPE_N;
++ fribidi_log2vis(str, len, &pbase_dir, //input
++ vis_str, // output
++ NULL, NULL, NULL // "statistics" that we don't need
++ );
++ str = vis_str;
++#endif
++
+ XftDrawString(g.handleXft(), c, font,
+ x - g.xorigin(),
+ y - g.yorigin(),
+ str, len);
++
++#ifdef CONFIG_FRIBIDI
++
++ if (vis_str != static_str)
++ delete[] str;
++
++#endif
++
+ }
+
+ static void textExtents(XftFont * font, char_t * str, size_t len,
+--- configure.in.old 2009-09-25 00:05:08.000000000 +0300
++++ configure.in 2009-09-25 00:07:14.000000000 +0300
+@@ -307,6 +307,20 @@
+ features="${features} i18n"
+ fi
+
++dnl =================================================== Right to left support ===
++dnl
++AC_ARG_ENABLE(fribidi,
++ [ --disable-fribidi Disable right to left support])
++
++if test "$enable_fribidi" != "no" && test "$enable_i18n" != "no"; then
++ PKG_CHECK_MODULES(FRIBIDI, fribidi)
++
++ AC_DEFINE(CONFIG_FRIBIDI,1, [Define to enable fribidi support])
++
++ CORE_CFLAGS="${CORE_CFLAGS} ${FRIBIDI_CFLAGS}"
++ CORE_LIBS="${CORE_LIBS} ${FRIBIDI_LIBS}"
++fi
++
+ dnl ============================================================ NLS Support ===
+ dnl
+ AC_ARG_ENABLE(nls,
diff --git a/x11-wm/icewm/files/icewm-keys.patch b/x11-wm/icewm/files/icewm-keys.patch
new file mode 100644
index 000000000000..7e136bb93288
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-keys.patch
@@ -0,0 +1,43 @@
+--- icewm-1.2.30/lib/keys.in.old 2007-01-18 13:55:20.000000000 +0200
++++ icewm-1.2.30/lib/keys.in 2007-01-18 16:07:07.000000000 +0200
+@@ -9,28 +9,21 @@
+ # You'll have to omit XK_ prefixs and to replace XF86XK_ prefixes by
+ # XF86. Valid modifiers are Alt, Ctrl, Shift, Meta, Super and Hyper.
+ #
+-key "Alt+Ctrl+t" xterm
+-key "Alt+Ctrl+f" fte
+-key "Alt+Ctrl+e" nedit
+-key "Alt+Ctrl+g" gimp
+-key "Alt+Ctrl+n" netscape -noraise -remote openBrowser
+-key "Alt+Ctrl+b" netscape -noraise -remote openBookmarks
+-key "Alt+Ctrl+m" netscape -noraise -remote openURL(mailto:,new-window)
++key "Alt+Ctrl+t" xterm
++key "Alt+Ctrl+b" xdg-open about:blank
++key "Alt+Ctrl+s" xdg-open http://www.google.com
+
+-key "Alt+Ctrl+KP_Divide" aumix -v -5 # lower volume
+-key "Alt+Ctrl+KP_Multiply" aumix -v +5 # raise volume
++key "Super+KP_Subtract" amixer sset PCM 5%-
++key "Super+KP_Add" amixer sset PCM 5%+
+
+ # "Multimedia key" bindings for XFree86. Gather the keycodes of your
+ # advanced function keys by watching the output of the xev command whilest
+ # pressing those keys and map those symbols by using xmodmap.
+
+-key "XF86Standby" killall -QUIT icewm
+-key "XF86AudioLowerVolume" aumix -v -5
+-key "XF86AudioRaiseVolume" aumix -v +5
+-key "XF86AudioMute" aumix -v 0
+-key "XF86AudioPlay" cdplay play 1
+-key "XF86AudioStop" cdplay stop
+-key "XF86HomePage" netscape -noraise -remote openHomepage
+-key "XF86Mail" netscape -noraise -remote openURL(mailto:,new-window)
+-key "XF86Search" netscape -noraise -remote openURL(http://www.google.com/)
+-key "XF86Eject" eject
++key "XF86Standby" killall -QUIT icewm
++key "XF86AudioLowerVolume" amixer sset PCM 5%-
++key "XF86AudioRaiseVolume" amixer sset PCM 5%+
++key "XF86AudioMute" amixer sset PCM 0%
++key "XF86HomePage" xdg-open about:blank
++key "XF86Search" xdg-open http://www.google.com
++key "XF86Eject" eject
diff --git a/x11-wm/icewm/files/icewm-startup b/x11-wm/icewm/files/icewm-startup
new file mode 100644
index 000000000000..048ab5938486
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-startup
@@ -0,0 +1,4 @@
+#!/bin/sh
+[ ! -d ~/.icewm ] && mkdir ~/.icewm
+XDG_MENU_PREFIX="gnome-" icewm-xdg-menu --entire-menu --with-theme-paths --icon-size 16 --theme gnome > ~/.icewm/programs.autogen
+
diff --git a/x11-wm/icewm/files/icewm-toolbar.patch b/x11-wm/icewm/files/icewm-toolbar.patch
new file mode 100644
index 000000000000..a6f0f15f52d3
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-toolbar.patch
@@ -0,0 +1,12 @@
+--- icewm-1.2.30/lib/toolbar.in.old 2007-01-18 18:51:55.000000000 +0200
++++ icewm-1.3.7/lib/toolbar.in 2012-06-10 09:36:00.000000000 +0200
+@@ -4,6 +4,6 @@
+ # since modifications to this file will be discarded when you
+ # (re)install icewm.
+ #
+-prog XTerm xterm xterm
+-prog FTE fte fte
+-prog Netscape netscape netscape
++prog xterm /usr/share/icons/gnome/16x16/apps/terminal.png xterm
++prog "Web browser" /usr/share/icons/gnome/16x16/apps/web-browser.png xdg-open about:blank
++
diff --git a/x11-wm/icewm/files/icewm-xdg-menu b/x11-wm/icewm/files/icewm-xdg-menu
new file mode 100644
index 000000000000..529f9e2ab3b4
--- /dev/null
+++ b/x11-wm/icewm/files/icewm-xdg-menu
@@ -0,0 +1,128 @@
+#!/usr/bin/python2
+"""
+This script generates FreeDesktop application menu for IceWM window manager.
+
+Written by Konstantin Korikov <lostclus@ua.fm>, put in the public domain
+
+Requires pyxdg http://cvs.freedesktop.org/cgi-bin/viewcvs.cgi/pyxdg/
+
+USAGE EXAMPLE
+
+Add to $HOME/.icewm/menu this line:
+
+ menuprog Applications - icewm-xdg-menu
+
+and restart IceWM.
+"""
+
+import sys
+import locale
+import getopt
+import re
+import xdg.Menu
+import xdg.DesktopEntry
+import xdg.IconTheme
+import xdg.Config
+
+version = "0.3"
+
+def print_usage(exit_code = 1):
+ print """Usage: %s [options]
+Options:
+ --locale=locale set output languege and encoding
+ --root-folder folder folder to generate (for example: /Games)
+ --terminal command set terminal emulator command (default: xterm -e %%s)
+ --default-folder-icon icon icon for folders that not provide Icon option
+ --default-entry-icon icon icon for entries that not provide Icon option
+ --with-theme-paths convert icon base names to icon absolute paths
+ using icon theme
+ --entire-menu print entire menu
+ --icon-size set default icon size
+ --theme theme set icon theme
+ --help print this help and exit
+ --version print version and exit
+""" % sys.argv[0]
+ sys.exit(exit_code)
+
+def print_version():
+ print "%s version %s" % (
+ os.path.basename(sys.argv[0]), version)
+ sys.exit(0)
+
+root_folder = ""
+terminal = "xterm -e %s"
+default_folder_icon = "folder"
+default_entry_icon = "-"
+entire_menu = False
+with_theme_paths = False
+icon_size = 16
+
+exec_clean1_re = re.compile(r'%[a-zA-Z]')
+exec_clean2_re = re.compile(r'%%')
+encoding = None
+locale_str = None
+
+def find_icon(entry):
+ icon = entry.getIcon()
+ if icon and with_theme_paths:
+ icon = xdg.IconTheme.getIconPath(icon, icon_size) or icon
+ return icon
+
+def process_menu(menu):
+ for entry in menu.getEntries():
+ if isinstance(entry, xdg.Menu.Menu):
+ name = entry.getName() or entry.DesktopFileID
+ icon = find_icon(entry) or default_folder_icon
+
+ if entire_menu:
+ print ("menu \"%s\" \"%s\" {" % (name, icon)).encode(encoding)
+ process_menu(entry)
+ print "}".encode(encoding)
+ else:
+ print (("menuprog \"%s\" \"%s\" %s" % (name, icon, sys.argv[0])) +
+ (" --root-folder \"%s\"" % entry.getPath(org=True)) +
+ (" --terminal \"%s\"" % terminal) +
+ (" --default-folder-icon \"%s\"" % default_folder_icon) +
+ (" --default-entry-icon \"%s\"" % default_entry_icon) +
+ (" --theme \"%s\"" % xdg.Config.icon_theme) +
+ (" --icon-size \"%d\"" % icon_size) +
+ (with_theme_paths and " --with-theme-paths" or "")).encode(encoding),
+ if locale_str:
+ print (" --locale \"%s\"" % locale_str).encode(encoding),
+ print
+ elif isinstance(entry, xdg.Menu.MenuEntry):
+ de = entry.DesktopEntry
+ name = de.getName() or entry.DesktopFileID
+ icon = find_icon(de) or default_entry_icon
+ execute = exec_clean2_re.sub('%', exec_clean1_re.sub('', de.getExec()))
+ if de.getTerminal(): execute = terminal % execute
+ print ("prog \"%s\" \"%s\" %s" % (name, icon, execute)).encode(encoding)
+
+try: opts, args = getopt.getopt(sys.argv[1:], "",
+ ("help", "version", "locale=",
+ "root-folder=", "terminal=", "default-folder-icon=",
+ "default-entry-icon=", "entire-menu", "theme=", "with-theme-paths",
+ "icon-size="))
+except getopt.GetoptError: print_usage()
+
+locale.setlocale(locale.LC_ALL, "")
+
+for o, v in opts:
+ if o == "--locale":
+ locale_str = v
+ locale.setlocale(locale.LC_ALL, locale_str)
+ if o == "--root-folder": root_folder = v
+ elif o == "--terminal": terminal = v
+ elif o == "--default-folder-icon": default_folder_icon = v
+ elif o == "--default-entry-icon": default_entry_icon = v
+ elif o == "--entire-menu" : entire_menu = True
+ elif o == "--with-theme-paths" : with_theme_paths = True
+ elif o == "--icon-size": icon_size = int(v)
+ elif o == "--theme" : xdg.Config.setIconTheme(v)
+ elif o in ("-h", "-?", "--help"): print_usage(0)
+ elif o in ("-v", "--version"): print_version()
+
+encoding = locale.getlocale()[1] or 'UTF-8'
+menu = xdg.Menu.parse()
+if root_folder: menu = menu.getMenu(root_folder)
+process_menu(menu)
diff --git a/x11-wm/icewm/icewm-1.3.10.ebuild b/x11-wm/icewm/icewm-1.3.10.ebuild
new file mode 100644
index 000000000000..0ea58766e110
--- /dev/null
+++ b/x11-wm/icewm/icewm-1.3.10.ebuild
@@ -0,0 +1,130 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools eutils python-single-r1
+
+DESCRIPTION="Ice Window Manager with Themes"
+HOMEPAGE="http://www.icewm.org/ https://github.com/bbidulock/icewm"
+LICENSE="GPL-2"
+SRC_URI="http://github.com/bbidulock/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="bidi debug doc gnome minimal nls truetype uclibc xinerama"
+REQUIRED_USE="gnome? ( ${PYTHON_REQUIRED_USE} )"
+
+# Tests broken in all versions, patches welcome, bug #323907, #389533
+RESTRICT="test"
+
+#fix for icewm preversion package names
+S=${WORKDIR}/${P/_}
+
+RDEPEND="
+ media-libs/fontconfig
+ x11-libs/gdk-pixbuf:2[X]
+ x11-libs/libX11
+ x11-libs/libXrandr
+ x11-libs/libXext
+ x11-libs/libXpm
+ x11-libs/libXrender
+ x11-libs/libXft
+ x11-libs/libSM
+ x11-libs/libICE
+ xinerama? ( x11-libs/libXinerama )
+ bidi? ( dev-libs/fribidi )
+ gnome? (
+ ${PYTHON_DEPS}
+ dev-python/pyxdg
+ gnome-base/gnome-desktop:2
+ gnome-base/gnome-menus
+ gnome-base/libgnomeui )
+"
+DEPEND="${RDEPEND}
+ >=sys-apps/sed-4
+ x11-proto/xproto
+ x11-proto/xextproto
+ doc? ( app-text/linuxdoc-tools )
+ nls? ( >=sys-devel/gettext-0.19.2 )
+ truetype? ( >=media-libs/freetype-2.0.9 )
+ xinerama? ( x11-proto/xineramaproto )
+"
+
+pkg_setup() {
+ if use truetype && use minimal; then
+ ewarn "You have both 'truetype' and 'minimal' use flags enabled."
+ ewarn "If you really want a minimal install, you will have to turn off"
+ ewarn "the truetype flag for this package."
+ fi
+}
+
+PATCHES=(
+ # Fedora patches
+ "${FILESDIR}"/${PN}-1.3.10-menu.patch
+)
+
+src_prepare() {
+ epatch ${PATCHES[@]}
+
+ # Fix bug #486710
+ use uclibc && epatch "${FILESDIR}/${PN}-1.3.8-uclibc.patch"
+
+ if ! use doc ; then
+ sed '/^SUBDIRS =/s@ doc@@' -i Makefile.am || die
+ fi
+
+ eautoreconf
+}
+
+src_configure() {
+ if use truetype
+ then
+ myconf="${myconf} --enable-gradients --enable-shape --enable-shaped-decorations"
+ else
+ myconf="${myconf} --disable-xfreetype --enable-corefonts
+ $(use_enable minimal lite)"
+ fi
+
+ myconf="${myconf}
+ --with-libdir=/usr/share/icewm
+ --with-cfgdir=/etc/icewm
+ --with-docdir=/usr/share/doc/${PF}/html
+ $(use_enable bidi fribidi)
+ $(use_enable debug)
+ $(use_enable gnome menus-gnome2)
+ $(use_enable nls i18n)
+ $(use_enable nls)
+ $(use_enable xinerama)"
+
+ CXXFLAGS="${CXXFLAGS}" econf ${myconf}
+
+ sed -i "s:/icewm-\$(VERSION)::" src/Makefile || die "patch failed"
+ sed -i "s:ungif:gif:" src/Makefile || die "libungif fix failed"
+}
+
+src_install(){
+ default
+
+ if use gnome; then
+ dobin "${FILESDIR}"/icewm-xdg-menu
+ exeinto /usr/share/icewm/
+ newexe "${FILESDIR}"/icewm-startup startup
+ fi
+
+ dodoc AUTHORS BUGS CHANGES PLATFORMS README* TODO VERSION
+
+ if ! use doc ; then
+ dohtml -a html,sgml doc/*
+ cp doc/${PN}.man "${T}"/${PN}.1
+ doman "${T}"/${PN}.1
+ fi
+
+ exeinto /etc/X11/Sessions
+ doexe "${FILESDIR}/icewm"
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/IceWM.desktop"
+}
diff --git a/x11-wm/icewm/icewm-1.3.8.ebuild b/x11-wm/icewm/icewm-1.3.8.ebuild
new file mode 100644
index 000000000000..a884d32071d4
--- /dev/null
+++ b/x11-wm/icewm/icewm-1.3.8.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools eutils python-single-r1
+
+DESCRIPTION="Ice Window Manager with Themes"
+HOMEPAGE="http://www.icewm.org/"
+LICENSE="GPL-2"
+SRC_URI="mirror://sourceforge/${PN}/${P/_}.tar.gz"
+
+SLOT="0"
+KEYWORDS="~alpha amd64 ppc ~ppc64 sparc x86"
+IUSE="bidi debug gnome minimal nls truetype uclibc xinerama"
+REQUIRED_USE="gnome? ( ${PYTHON_REQUIRED_USE} )"
+
+# Tests broken in all versions, patches welcome, bug #323907, #389533
+RESTRICT="test"
+
+#fix for icewm preversion package names
+S=${WORKDIR}/${P/_}
+
+RDEPEND="
+ x11-libs/gdk-pixbuf:2[X]
+ x11-libs/libX11
+ x11-libs/libXrandr
+ x11-libs/libXext
+ x11-libs/libXpm
+ x11-libs/libXrender
+ x11-libs/libXft
+ x11-libs/libSM
+ x11-libs/libICE
+ xinerama? ( x11-libs/libXinerama )
+ bidi? ( dev-libs/fribidi )
+ gnome? (
+ ${PYTHON_DEPS}
+ dev-python/pyxdg
+ gnome-base/gnome-desktop:2
+ gnome-base/gnome-menus
+ gnome-base/libgnomeui )
+ nls? ( sys-devel/gettext )
+ truetype? ( >=media-libs/freetype-2.0.9 )
+ media-libs/giflib
+"
+DEPEND="${RDEPEND}
+ x11-proto/xproto
+ x11-proto/xextproto
+ xinerama? ( x11-proto/xineramaproto )
+ >=sys-apps/sed-4
+"
+
+pkg_setup() {
+ if use truetype && use minimal; then
+ ewarn "You have both 'truetype' and 'minimal' use flags enabled."
+ ewarn "If you really want a minimal install, you will have to turn off"
+ ewarn "the truetype flag for this package."
+ fi
+}
+
+src_prepare() {
+ # Fedora patches
+ epatch "${FILESDIR}"/${PN}-1.3.8-menu.patch
+ epatch "${FILESDIR}"/${PN}-toolbar.patch
+ epatch "${FILESDIR}"/${PN}-keys.patch
+ epatch "${FILESDIR}"/${PN}-fribidi.patch
+ epatch "${FILESDIR}"/${PN}-1.3.7-dso.patch
+ epatch "${FILESDIR}"/${PN}-defaults.patch
+ epatch "${FILESDIR}"/${PN}-1.3.7-menuiconsize.patch
+ epatch "${FILESDIR}"/${PN}-1.3.8-deprecated.patch
+
+ epatch "${FILESDIR}"/${PN}-1.3.7-gcc44.patch
+
+ # Get thermal info from proper locations, bug #452730
+ epatch "${FILESDIR}"/${PN}-1.3.7-thermal.patch
+
+ # Debian patch fixing multiple build issues, like bug #470148
+ epatch "${FILESDIR}"/${PN}-1.3.8-build-fixes.patch
+
+ # Fix bug #486710
+ use uclibc && epatch "${FILESDIR}/${P}-uclibc.patch"
+
+ eautoreconf
+}
+
+src_configure() {
+ if use truetype
+ then
+ myconf="${myconf} --enable-gradients --enable-shape --enable-shaped-decorations"
+ else
+ myconf="${myconf} --disable-xfreetype --enable-corefonts
+ $(use_enable minimal lite)"
+ fi
+
+ myconf="${myconf}
+ --with-libdir=/usr/share/icewm
+ --with-cfgdir=/etc/icewm
+ --with-docdir=/usr/share/doc/${PF}/html
+ $(use_enable bidi fribidi)
+ $(use_enable debug)
+ $(use_enable gnome menus-gnome2)
+ $(use_enable nls i18n)
+ $(use_enable nls)
+ $(use_enable x86 x86-asm)
+ $(use_enable xinerama)
+ --without-esd-config"
+
+ CXXFLAGS="${CXXFLAGS}" econf ${myconf}
+
+ sed -i "s:/icewm-\$(VERSION)::" src/Makefile || die "patch failed"
+ sed -i "s:ungif:gif:" src/Makefile || die "libungif fix failed"
+}
+
+src_install(){
+ default
+
+ if use gnome; then
+ dobin "${FILESDIR}"/icewm-xdg-menu
+ exeinto /usr/share/icewm/
+ newexe "${FILESDIR}"/icewm-startup startup
+ fi
+
+ dodoc AUTHORS BUGS CHANGES PLATFORMS README* TODO VERSION
+ dohtml -a html,sgml doc/*
+
+ exeinto /etc/X11/Sessions
+ doexe "${FILESDIR}/icewm"
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/IceWM.desktop"
+}
diff --git a/x11-wm/icewm/icewm-1.3.9.ebuild b/x11-wm/icewm/icewm-1.3.9.ebuild
new file mode 100644
index 000000000000..eb3eaed9b855
--- /dev/null
+++ b/x11-wm/icewm/icewm-1.3.9.ebuild
@@ -0,0 +1,135 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools eutils python-single-r1
+
+DESCRIPTION="Ice Window Manager with Themes"
+HOMEPAGE="http://www.icewm.org/ https://github.com/bbidulock/icewm"
+LICENSE="GPL-2"
+SRC_URI="http://github.com/bbidulock/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="bidi debug doc gnome minimal nls truetype uclibc xinerama"
+REQUIRED_USE="gnome? ( ${PYTHON_REQUIRED_USE} )"
+
+# Tests broken in all versions, patches welcome, bug #323907, #389533
+RESTRICT="test"
+
+#fix for icewm preversion package names
+S=${WORKDIR}/${P/_}
+
+RDEPEND="
+ media-libs/fontconfig
+ x11-libs/gdk-pixbuf:2[X]
+ x11-libs/libX11
+ x11-libs/libXrandr
+ x11-libs/libXext
+ x11-libs/libXpm
+ x11-libs/libXrender
+ x11-libs/libXft
+ x11-libs/libSM
+ x11-libs/libICE
+ xinerama? ( x11-libs/libXinerama )
+ bidi? ( dev-libs/fribidi )
+ gnome? (
+ ${PYTHON_DEPS}
+ dev-python/pyxdg
+ gnome-base/gnome-desktop:2
+ gnome-base/gnome-menus
+ gnome-base/libgnomeui )
+"
+DEPEND="${RDEPEND}
+ >=sys-apps/sed-4
+ x11-proto/xproto
+ x11-proto/xextproto
+ doc? ( app-text/linuxdoc-tools )
+ nls? ( >=sys-devel/gettext-0.19.2 )
+ truetype? ( >=media-libs/freetype-2.0.9 )
+ xinerama? ( x11-proto/xineramaproto )
+"
+
+pkg_setup() {
+ if use truetype && use minimal; then
+ ewarn "You have both 'truetype' and 'minimal' use flags enabled."
+ ewarn "If you really want a minimal install, you will have to turn off"
+ ewarn "the truetype flag for this package."
+ fi
+}
+
+PATCHES=(
+ # Fedora patches
+ "${FILESDIR}"/${PN}-1.3.8-menu.patch
+ "${FILESDIR}"/${PN}-1.3.9-fribidi.patch
+ "${FILESDIR}"/${PN}-1.3.8-deprecated.patch
+
+ # Debian patch fixing multiple build issues, like bug #470148
+ #"${FILESDIR}"/${PN}-1.3.8-build-fixes.patch
+)
+
+src_prepare() {
+ epatch ${PATCHES[@]}
+
+ # Fix bug #486710
+ use uclibc && epatch "${FILESDIR}/${PN}-1.3.8-uclibc.patch"
+
+ if ! use doc ; then
+ sed '/^SUBDIRS =/s@ doc@@' -i Makefile.am || die
+ fi
+
+ eautoreconf
+}
+
+src_configure() {
+ if use truetype
+ then
+ myconf="${myconf} --enable-gradients --enable-shape --enable-shaped-decorations"
+ else
+ myconf="${myconf} --disable-xfreetype --enable-corefonts
+ $(use_enable minimal lite)"
+ fi
+
+ myconf="${myconf}
+ --with-libdir=/usr/share/icewm
+ --with-cfgdir=/etc/icewm
+ --with-docdir=/usr/share/doc/${PF}/html
+ $(use_enable bidi fribidi)
+ $(use_enable debug)
+ $(use_enable gnome menus-gnome2)
+ $(use_enable nls i18n)
+ $(use_enable nls)
+ $(use_enable xinerama)"
+
+ CXXFLAGS="${CXXFLAGS}" econf ${myconf}
+
+ sed -i "s:/icewm-\$(VERSION)::" src/Makefile || die "patch failed"
+ sed -i "s:ungif:gif:" src/Makefile || die "libungif fix failed"
+}
+
+src_install(){
+ default
+
+ if use gnome; then
+ dobin "${FILESDIR}"/icewm-xdg-menu
+ exeinto /usr/share/icewm/
+ newexe "${FILESDIR}"/icewm-startup startup
+ fi
+
+ dodoc AUTHORS BUGS CHANGES PLATFORMS README* TODO VERSION
+
+ if ! use doc ; then
+ dohtml -a html,sgml doc/*
+ cp doc/${PN}.man "${T}"/${PN}.1
+ doman "${T}"/${PN}.1
+ fi
+
+ exeinto /etc/X11/Sessions
+ doexe "${FILESDIR}/icewm"
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/IceWM.desktop"
+}
diff --git a/x11-wm/icewm/metadata.xml b/x11-wm/icewm/metadata.xml
new file mode 100644
index 000000000000..175a10c99c1b
--- /dev/null
+++ b/x11-wm/icewm/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>polynomial-c@gentoo.org</email>
+ <name>Lars Wendler</name>
+ </maintainer>
+ <longdescription>
+ IceWM is a window manager designed for speed, usability, and consistency.
+ It is able to emulate the looks of Motif, OS/2, and Windows, and allows you
+ to have a customizable look using pixmaps.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">bbidulock/icewm</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/x11-wm/jwm/Manifest b/x11-wm/jwm/Manifest
new file mode 100644
index 000000000000..1ba0f399fd1e
--- /dev/null
+++ b/x11-wm/jwm/Manifest
@@ -0,0 +1 @@
+DIST jwm-2.1.0.tar.bz2 163590 SHA256 5c99f9023dc8c2597effdaacc240ff4c2e07e77c8244f3bf1de5cc483bcf08ab
diff --git a/x11-wm/jwm/files/jwm-2.0.1-nostrip.patch b/x11-wm/jwm/files/jwm-2.0.1-nostrip.patch
new file mode 100644
index 000000000000..7b1eb1c7fc83
--- /dev/null
+++ b/x11-wm/jwm/files/jwm-2.0.1-nostrip.patch
@@ -0,0 +1,10 @@
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -20,7 +20,6 @@
+ all: $(EXE)
+
+ install: all
+- strip $(EXE)
+ install -d $(BINDIR)
+ install $(EXE) $(BINDIR)/$(EXE)
+
diff --git a/x11-wm/jwm/jwm-2.1.0.ebuild b/x11-wm/jwm/jwm-2.1.0.ebuild
new file mode 100644
index 000000000000..0118f3d80eff
--- /dev/null
+++ b/x11-wm/jwm/jwm-2.1.0.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit eutils
+
+DESCRIPTION="Very fast and lightweight still powerful window manager for X"
+HOMEPAGE="http://joewing.net/programs/jwm/"
+SRC_URI="http://joewing.net/programs/jwm/releases/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 hppa ppc x86 ~x86-fbsd"
+IUSE="bidi debug jpeg png truetype xinerama xpm"
+
+RDEPEND="xpm? ( x11-libs/libXpm )
+ xinerama? ( x11-libs/libXinerama )
+ x11-libs/libXext
+ x11-libs/libXrender
+ x11-libs/libXau
+ x11-libs/libXdmcp
+ truetype? ( x11-libs/libXft )
+ png? ( media-libs/libpng )
+ jpeg? ( virtual/jpeg )
+ bidi? ( dev-libs/fribidi )
+ dev-libs/expat"
+DEPEND="${RDEPEND}
+ x11-proto/xproto
+ x11-proto/xextproto
+ xinerama? ( x11-proto/xineramaproto )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2.0.1-nostrip.patch
+}
+
+src_configure() {
+ econf \
+ $(use_enable debug) \
+ $(use_enable jpeg) \
+ $(use_enable png) \
+ $(use_enable truetype xft) \
+ $(use_enable xinerama) \
+ $(use_enable xpm) \
+ $(use_enable bidi fribidi) \
+ --enable-shape \
+ --enable-xrender
+}
+
+src_install() {
+ dodir /usr/bin
+ dodir /etc
+ dodir /usr/share/man
+ emake BINDIR="${D}/usr/bin" SYSCONF="${D}/etc" \
+ MANDIR="${D}/usr/share/man" install
+ rm "${D}"/etc/system.jwmrc
+
+ echo "#!/bin/sh" > jwm
+ echo "exec /usr/bin/jwm" >> jwm
+ exeinto /etc/X11/Sessions
+ doexe jwm
+
+ dodoc README example.jwmrc todo.txt
+}
+
+pkg_postinst() {
+ einfo "Put an appropriate configuration file in /etc/system.jwmrc"
+ einfo "or in ~/.jwmrc."
+ einfo "An example file can be found in ${EROOT}/usr/share/doc/${PF}/"
+}
diff --git a/x11-wm/jwm/metadata.xml b/x11-wm/jwm/metadata.xml
new file mode 100644
index 000000000000..4538a68724a6
--- /dev/null
+++ b/x11-wm/jwm/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>maintainer-needed@gentoo.org</email></maintainer>
+</pkgmetadata>
diff --git a/x11-wm/larswm/Manifest b/x11-wm/larswm/Manifest
new file mode 100644
index 000000000000..a269ecffe5ab
--- /dev/null
+++ b/x11-wm/larswm/Manifest
@@ -0,0 +1 @@
+DIST larswm-7.5.3.tar.gz 84505 SHA256 7b444b10a93589cbdb4ff45a785d5a65121d80f27a73f0b2ec74421b5eeab4f6
diff --git a/x11-wm/larswm/files/larswm.desktop b/x11-wm/larswm/files/larswm.desktop
new file mode 100644
index 000000000000..6be965d27308
--- /dev/null
+++ b/x11-wm/larswm/files/larswm.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Version=1.0
+Name=larswm
+Comment=This session logs you into larswm
+Exec=larswm-session
+Icon=
+Type=Application
diff --git a/x11-wm/larswm/larswm-7.5.3-r1.ebuild b/x11-wm/larswm/larswm-7.5.3-r1.ebuild
new file mode 100644
index 000000000000..e3466a5dd12a
--- /dev/null
+++ b/x11-wm/larswm/larswm-7.5.3-r1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit toolchain-funcs
+
+DESCRIPTION="Tiling window manager for X11, based on 9wm by David Hogan"
+HOMEPAGE="http://larswm.fnurt.net/"
+SRC_URI="http://larswm.fnurt.net/${P}.tar.gz"
+LICENSE="9wm"
+
+SLOT="0"
+KEYWORDS="alpha ~amd64 ppc ppc64 x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND="x11-libs/libX11
+ x11-libs/libXmu
+ x11-libs/libXt
+ x11-libs/libXext"
+DEPEND="${RDEPEND}
+ x11-proto/xproto
+ x11-proto/xextproto
+ x11-misc/imake
+ x11-misc/gccmakedep
+ app-text/rman"
+
+src_configure() {
+ xmkmf -a || die
+}
+
+src_compile() {
+ emake \
+ CC=$(tc-getCC) \
+ CCOPTIONS="${CFLAGS}" \
+ EXTRA_LDOPTIONS="${LDFLAGS}" \
+ || die
+}
+
+src_install() {
+ dobin larsclock larsmenu larsremote larswm
+ newbin sample.xsession larswm-session
+ for x in *.man ; do
+ newman $x ${x/man/1}
+ done
+ dodoc ChangeLog README* sample.*
+
+ insinto /etc/X11
+ newins sample.larswmrc larswmrc || die
+ exeinto /etc/X11/Sessions
+ newexe sample.xsession larswm
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/larswm.desktop || die
+}
diff --git a/x11-wm/larswm/metadata.xml b/x11-wm/larswm/metadata.xml
new file mode 100644
index 000000000000..4ac6c58c9045
--- /dev/null
+++ b/x11-wm/larswm/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>maintainer-needed@gentoo.org</email></maintainer>
+ <longdescription>
+ larswm is a modified version of the 9wm window manager that adds virtual
+ desktops, automatic window tiling, and many other features designed to
+ make it a highly efficient user environment. One of the design goals is
+ that you should never have to manually shuffle windows around on the
+ screen. Another is that it should use as little CPU time, RAM, and screen
+ space for itself as possible.
+ </longdescription>
+</pkgmetadata>
diff --git a/x11-wm/lwm/Manifest b/x11-wm/lwm/Manifest
new file mode 100644
index 000000000000..fc3b8e17d871
--- /dev/null
+++ b/x11-wm/lwm/Manifest
@@ -0,0 +1,3 @@
+DIST lwm-1.2.1.tar.gz 46309 SHA256 e50538831655bb0fe41badc35477c12e6dff5becfda365bdb759f230ee0d5af2
+DIST lwm-1.2.2.tar.gz 47715 SHA256 3567b53f5de8c0bb23a83efa94a256547fc44f677bc15b9449599aeac7aaad7d SHA512 18d0e9923b8c24164b2a8ecbaf48e0120ae3e9be69a5a43716b45e605e740f19c96586dad64506076affcfba7b4e1eeef547a1cb8239ea108c40f80ef2f90419 WHIRLPOOL 98e0c3f5e2d27825df60a82343fb09b453ccbca1bbdf2e8bdb0207baa2ff2ef2665254dbefcc97ef9bd4ce85fa118e5bef73517ad57b9c40f792f82903f96499
+DIST lwm-1.2.3.tar.gz 47253 SHA256 f27587d8f8b77378050917735a69dd9160d9903a4cfb3e23a62991023fc5e558 SHA512 2c699050b3d8ade258a5ff21c0f7a427470bee9a5c8a92f031c4e74f3dcd78f00e181c04ea00bbd4d0dafd60eee5e603b247b75c21faf1017d9f61fb49702d03 WHIRLPOOL 86e8708ae1900ab49382a86729902d15b603eb435d12baceab97892a0757fdbe261cb22d965bd34bae578fc78e3fe84224ca59ffe4ab814fb2c3d7a9e52fcb8e
diff --git a/x11-wm/lwm/lwm-1.2.1.ebuild b/x11-wm/lwm/lwm-1.2.1.ebuild
new file mode 100644
index 000000000000..6f8326f26313
--- /dev/null
+++ b/x11-wm/lwm/lwm-1.2.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+IUSE=""
+
+DESCRIPTION="The ultimate lightweight window manager"
+SRC_URI="http://www.jfc.org.uk/files/lwm/${P}.tar.gz"
+HOMEPAGE="http://www.jfc.org.uk/software/lwm.html"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ppc sparc x86 ~x86-fbsd"
+
+RDEPEND="x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXext"
+DEPEND="${RDEPEND}
+ x11-proto/xproto
+ x11-proto/xextproto
+ x11-misc/imake"
+
+src_compile() {
+ xmkmf || die
+ emake lwm || die
+}
+
+src_install() {
+
+ dobin lwm
+
+ newman lwm.man lwm.1
+ dodoc AUTHORS BUGS ChangeLog INSTALL README TODO
+}
diff --git a/x11-wm/lwm/lwm-1.2.2.ebuild b/x11-wm/lwm/lwm-1.2.2.ebuild
new file mode 100644
index 000000000000..28ea91e910d2
--- /dev/null
+++ b/x11-wm/lwm/lwm-1.2.2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit toolchain-funcs
+
+DESCRIPTION="The ultimate lightweight window manager"
+SRC_URI="http://www.jfc.org.uk/files/lwm/${P}.tar.gz"
+HOMEPAGE="http://www.jfc.org.uk/software/lwm.html"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="amd64 ppc ~sparc x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND="x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11
+ x11-libs/libXext"
+DEPEND="${RDEPEND}
+ x11-proto/xproto
+ x11-proto/xextproto
+ x11-misc/imake"
+
+src_prepare() {
+ sed -i -e "s/(SMLIB)/& -lICE/g" Imakefile || die #370127
+ xmkmf || die
+}
+
+src_compile() {
+ emake \
+ EXTRA_LDOPTIONS="${CFLAGS} ${LDFLAGS}" \
+ CFLAGS="${CFLAGS}" \
+ CC="$(tc-getCC)" \
+ lwm || die
+}
+
+src_install() {
+ dobin lwm
+
+ newman lwm.man lwm.1
+ dodoc AUTHORS BUGS ChangeLog
+}
diff --git a/x11-wm/lwm/lwm-1.2.3.ebuild b/x11-wm/lwm/lwm-1.2.3.ebuild
new file mode 100644
index 000000000000..ef03f4782b4f
--- /dev/null
+++ b/x11-wm/lwm/lwm-1.2.3.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit toolchain-funcs
+
+DESCRIPTION="The ultimate lightweight window manager"
+SRC_URI="http://www.jfc.org.uk/files/lwm/${P}.tar.gz"
+HOMEPAGE="http://www.jfc.org.uk/software/lwm.html"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND="
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXext
+"
+DEPEND="
+ ${RDEPEND}
+ x11-misc/imake
+ x11-proto/xextproto
+ x11-proto/xproto
+"
+
+src_prepare() {
+ sed -i -e "s/(SMLIB)/& -lICE/g" Imakefile || die #370127
+ xmkmf || die
+}
+
+src_compile() {
+ emake \
+ EXTRA_LDOPTIONS="${CFLAGS} ${LDFLAGS}" \
+ CFLAGS="${CFLAGS}" \
+ CC="$(tc-getCC)" \
+ lwm || die
+}
+
+src_install() {
+ dobin lwm
+
+ newman lwm.man lwm.1
+ dodoc AUTHORS BUGS ChangeLog
+}
diff --git a/x11-wm/lwm/metadata.xml b/x11-wm/lwm/metadata.xml
new file mode 100644
index 000000000000..747591635cac
--- /dev/null
+++ b/x11-wm/lwm/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>maintainer-needed@gentoo.org</email></maintainer>
+ <longdescription>
+ lwm is a window manager for X that tries to keep out of your face.
+ There are no icons, no button bars, no icon docks, no root menus,
+ no nothing.
+ </longdescription>
+</pkgmetadata>
diff --git a/x11-wm/marco/Manifest b/x11-wm/marco/Manifest
new file mode 100644
index 000000000000..617713125e18
--- /dev/null
+++ b/x11-wm/marco/Manifest
@@ -0,0 +1,2 @@
+DIST marco-1.8.0.tar.xz 1111780 SHA256 b66f58c87552a20a4533c1ea482d374a35c8921091736e198c2bf1774163a9e6 SHA512 ae6619547b7ebcb27d3baee9612d91a74da99cc7d001d7659a4452855d6c722d4c3bee465ea194e579e61660ce9089d158e4308c78b025ce2848e88e53794023 WHIRLPOOL e33b7a2024c41cbf9c27b0cd1d0423daf17a60d15b2a05c59d66353a9b6349e8c5bcd289e222e4ba24678442a8b9bc7d2fbe3fb0f245767aa615402f4b029ae6
+DIST marco-1.8.2.tar.xz 1119448 SHA256 a5ef03dfd4de035ed6c99aca500256c6f4564a090702066303770dbf7c893443 SHA512 9d8ea38e78a07cd94737bd1da7956b09fba8adc7716b63b281300cdf7c43db1fbed285b6f6085b41bf8ff367e48993ecd230e1ce8a29f3c476d5247274087959 WHIRLPOOL 53ae69ddd5146b6d1342f9ff70d3d5f587befbef25d90d70ae4a2327d3f3b62cb6255ff8840ea88b8d74b8b4b50062a801219dff6b9b6df676726749e4d38027
diff --git a/x11-wm/marco/marco-1.8.0.ebuild b/x11-wm/marco/marco-1.8.0.ebuild
new file mode 100644
index 000000000000..e2ea6f069a91
--- /dev/null
+++ b/x11-wm/marco/marco-1.8.0.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+# Debug only changes CFLAGS
+GCONF_DEBUG="no"
+GNOME2_LA_PUNT="yes"
+
+inherit gnome2 versionator
+
+MATE_BRANCH="$(get_version_component_range 1-2)"
+
+SRC_URI="http://pub.mate-desktop.org/releases/${MATE_BRANCH}/${P}.tar.xz"
+DESCRIPTION="MATE default window manager"
+HOMEPAGE="http://mate-desktop.org"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="startup-notification test xinerama"
+
+RDEPEND="
+ dev-libs/atk:0
+ >=dev-libs/glib-2.25.10:2
+ >=mate-extra/mate-dialogs-1.8:0
+ media-libs/libcanberra:0[gtk]
+ >=gnome-base/libgtop-2:2=
+ x11-libs/cairo:0
+ >=x11-libs/pango-1.2:0[X]
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/gtk+-2.20:2
+ x11-libs/libICE:0
+ x11-libs/libSM:0
+ x11-libs/libX11:0
+ >=x11-libs/libXcomposite-0.2:0
+ x11-libs/libXcursor:0
+ x11-libs/libXdamage:0
+ x11-libs/libXext:0
+ x11-libs/libXfixes:0
+ x11-libs/libXrandr:0
+ x11-libs/libXrender:0
+ >=x11-libs/startup-notification-0.7:0
+ virtual/libintl:0
+ xinerama? ( x11-libs/libXinerama:0 )
+ !!x11-wm/mate-window-manager"
+
+DEPEND="${RDEPEND}
+ app-text/yelp-tools:0
+ >=dev-util/intltool-0.34.90:*
+ sys-devel/gettext:*
+ virtual/pkgconfig:*
+ x11-proto/xextproto:0
+ x11-proto/xproto:0
+ test? ( app-text/docbook-xml-dtd:4.5 )
+ xinerama? ( x11-proto/xineramaproto:0 )"
+
+src_configure() {
+ gnome2_src_configure \
+ --enable-compositor \
+ --enable-render \
+ --enable-shape \
+ --enable-sm \
+ --enable-xsync \
+ --with-gtk=2.0 \
+ $(use_enable startup-notification) \
+ $(use_enable xinerama)
+}
+
+DOCS="AUTHORS ChangeLog HACKING NEWS README *.txt doc/*.txt"
diff --git a/x11-wm/marco/marco-1.8.2.ebuild b/x11-wm/marco/marco-1.8.2.ebuild
new file mode 100644
index 000000000000..91435e689373
--- /dev/null
+++ b/x11-wm/marco/marco-1.8.2.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+# Debug only changes CFLAGS
+GCONF_DEBUG="no"
+GNOME2_LA_PUNT="yes"
+
+inherit gnome2 versionator
+
+MATE_BRANCH="$(get_version_component_range 1-2)"
+
+SRC_URI="http://pub.mate-desktop.org/releases/${MATE_BRANCH}/${P}.tar.xz"
+DESCRIPTION="MATE default window manager"
+HOMEPAGE="http://mate-desktop.org"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="startup-notification test xinerama"
+
+RDEPEND="
+ dev-libs/atk:0
+ >=dev-libs/glib-2.25.10:2
+ >=mate-extra/mate-dialogs-1.8:0
+ media-libs/libcanberra:0[gtk]
+ >=gnome-base/libgtop-2:2=
+ x11-libs/cairo:0
+ >=x11-libs/pango-1.2:0[X]
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/gtk+-2.20:2
+ x11-libs/libICE:0
+ x11-libs/libSM:0
+ x11-libs/libX11:0
+ >=x11-libs/libXcomposite-0.2:0
+ x11-libs/libXcursor:0
+ x11-libs/libXdamage:0
+ x11-libs/libXext:0
+ x11-libs/libXfixes:0
+ x11-libs/libXrandr:0
+ x11-libs/libXrender:0
+ >=x11-libs/startup-notification-0.7:0
+ virtual/libintl:0
+ xinerama? ( x11-libs/libXinerama:0 )
+ !!x11-wm/mate-window-manager"
+
+DEPEND="${RDEPEND}
+ app-text/yelp-tools:0
+ >=dev-util/intltool-0.34.90:*
+ sys-devel/gettext:*
+ virtual/pkgconfig:*
+ x11-proto/xextproto:0
+ x11-proto/xproto:0
+ test? ( app-text/docbook-xml-dtd:4.5 )
+ xinerama? ( x11-proto/xineramaproto:0 )"
+
+src_configure() {
+ gnome2_src_configure \
+ --enable-compositor \
+ --enable-render \
+ --enable-shape \
+ --enable-sm \
+ --enable-xsync \
+ --with-gtk=2.0 \
+ $(use_enable startup-notification) \
+ $(use_enable xinerama)
+}
+
+DOCS="AUTHORS ChangeLog HACKING NEWS README *.txt doc/*.txt"
diff --git a/x11-wm/marco/metadata.xml b/x11-wm/marco/metadata.xml
new file mode 100644
index 000000000000..1a53cd0586f6
--- /dev/null
+++ b/x11-wm/marco/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>mate</herd>
+ <upstream>
+ <remote-id type="github">mate-desktop/marco</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/x11-wm/matchbox-common/Manifest b/x11-wm/matchbox-common/Manifest
new file mode 100644
index 000000000000..57c1233c37c9
--- /dev/null
+++ b/x11-wm/matchbox-common/Manifest
@@ -0,0 +1 @@
+DIST matchbox-common-0.9.1.tar.bz2 86365 SHA256 524995b9899cc10d04c7964fb88ff8a2199865ca97e8d4988abd8d6c2a286199
diff --git a/x11-wm/matchbox-common/files/MatchBox.desktop b/x11-wm/matchbox-common/files/MatchBox.desktop
new file mode 100644
index 000000000000..8428a245f780
--- /dev/null
+++ b/x11-wm/matchbox-common/files/MatchBox.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=MatchBox
+Comment=This session logs you into MatchBox
+Exec=matchbox-session
+TryExec=/usr/bin/matchbox-session
+# no icon yet, only the top three are currently used
+Icon=
+Type=Application
diff --git a/x11-wm/matchbox-common/files/add-media-category.patch b/x11-wm/matchbox-common/files/add-media-category.patch
new file mode 100644
index 000000000000..5c502b379728
--- /dev/null
+++ b/x11-wm/matchbox-common/files/add-media-category.patch
@@ -0,0 +1,37 @@
+diff -urN matchbox-common-0.9.1/data/vfolders-pda.orig/Makefile.am matchbox-common-0.9.1/data/vfolders-pda/Makefile.am
+--- matchbox-common-0.9.1/data/vfolders-pda.orig/Makefile.am 2004-12-01 12:22:30.000000000 +0100
++++ matchbox-common-0.9.1/data/vfolders-pda/Makefile.am 2006-02-16 21:32:57.000000000 +0100
+@@ -1,5 +1,6 @@
+ desktop_files = Applications.directory \
+ Games.directory \
++ Media.directory \
+ Other.directory \
+ Root.directory \
+ Settings.directory \
+@@ -11,4 +12,4 @@
+ vfolders_DATA = $(desktop_files)
+ endif
+
+-EXTRA_DIST = $(desktop_files)
+\ No newline at end of file
++EXTRA_DIST = $(desktop_files)
+diff -urN matchbox-common-0.9.1/data/vfolders-pda.orig/Media.directory matchbox-common-0.9.1/data/vfolders-pda/Media.directory
+--- matchbox-common-0.9.1/data/vfolders-pda.orig/Media.directory 1970-01-01 01:00:00.000000000 +0100
++++ matchbox-common-0.9.1/data/vfolders-pda/Media.directory 2006-02-16 21:16:29.000000000 +0100
+@@ -0,0 +1,8 @@
++[Desktop Entry]
++Name=Media
++Name[de]=Medien
++Comment=View media files
++Comment[de]=Programme zur Wiedergabe von audiovisuellen Medien
++Icon=mbfolder.png
++Type=Directory
++Match=AudioVideo;Graphics;Media;Viewer;
+diff -urN matchbox-common-0.9.1/data/vfolders-pda.orig/Root.order matchbox-common-0.9.1/data/vfolders-pda/Root.order
+--- matchbox-common-0.9.1/data/vfolders-pda.orig/Root.order 2006-02-16 20:51:36.000000000 +0100
++++ matchbox-common-0.9.1/data/vfolders-pda/Root.order 2006-02-16 20:53:23.000000000 +0100
+@@ -1,3 +1,4 @@
++Media
+ Games
+ Settings
+ Other
diff --git a/x11-wm/matchbox-common/files/no-utilities-category.patch b/x11-wm/matchbox-common/files/no-utilities-category.patch
new file mode 100644
index 000000000000..6801533ac3a0
--- /dev/null
+++ b/x11-wm/matchbox-common/files/no-utilities-category.patch
@@ -0,0 +1,7 @@
+--- matchbox-common-0.9.1.orig/data/vfolders-pda/Root.order 2006-02-03 22:26:55.000000000 +0100
++++ matchbox-common-0.9.1/data/vfolders-pda/Root.order 2006-02-03 22:32:08.000000000 +0100
+@@ -1,4 +1,3 @@
+-Utilities
+ Games
+ Settings
+ Other
diff --git a/x11-wm/matchbox-common/matchbox-common-0.9.1-r2.ebuild b/x11-wm/matchbox-common/matchbox-common-0.9.1-r2.ebuild
new file mode 100644
index 000000000000..234eca3a0234
--- /dev/null
+++ b/x11-wm/matchbox-common/matchbox-common-0.9.1-r2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils versionator
+
+DESCRIPTION="Common files used by matchbox-panel and matchbox-desktop packages"
+HOMEPAGE="http://matchbox-project.org/"
+SRC_URI="http://matchbox-project.org/sources/${PN}/$(get_version_component_range 1-2)/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~hppa ppc x86"
+IUSE="pda"
+
+RDEPEND=">=x11-libs/libmatchbox-1.1"
+DEPEND="${RDEPEND}"
+
+src_compile() {
+ econf $(use_enable pda pda-folders)
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+
+ # Insert our Xsession
+ echo -e "#!/bin/sh\n\nmatchbox-session" > "${T}"/matchbox
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/matchbox
+
+ # Insert GDM/KDM xsession file
+ wm=matchbox make_session_desktop MatchBox matchbox-session
+
+ dodoc AUTHORS ChangeLog INSTALL NEWS README
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/no-utilities-category.patch
+ epatch "${FILESDIR}"/add-media-category.patch
+}
diff --git a/x11-wm/matchbox-common/metadata.xml b/x11-wm/matchbox-common/metadata.xml
new file mode 100644
index 000000000000..ad51fb7f931f
--- /dev/null
+++ b/x11-wm/matchbox-common/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>gpe</herd>
+<use>
+ <flag name='pda'>Support for pda folders</flag>
+</use>
+</pkgmetadata>
diff --git a/x11-wm/matchbox-desktop/Manifest b/x11-wm/matchbox-desktop/Manifest
new file mode 100644
index 000000000000..399962591d09
--- /dev/null
+++ b/x11-wm/matchbox-desktop/Manifest
@@ -0,0 +1 @@
+DIST matchbox-desktop-0.9.1.tar.bz2 231962 SHA256 ecb025d3660d80a9850973111b4fdfffaa50b47cbf0c5467b508d28d65146793 SHA512 469d7c088405f627b571d0475e283e1dab2d74e10a58ab9d597cb8941a633f1993859234f9444d160257dade005ce3b325c5375fab2e5f4e30aa0048578853eb WHIRLPOOL 3ec33f322c06856d655e99a940384d5e666e1d87beab71ef8ab0a8a8aabe873de5508bb090be24a169396eaced08f9c342000997a1eb799fbbebce2b2ddfa47f
diff --git a/x11-wm/matchbox-desktop/files/matchbox-desktop-0.9.1-dlopen.patch b/x11-wm/matchbox-desktop/files/matchbox-desktop-0.9.1-dlopen.patch
new file mode 100644
index 000000000000..3c7c7037eedf
--- /dev/null
+++ b/x11-wm/matchbox-desktop/files/matchbox-desktop-0.9.1-dlopen.patch
@@ -0,0 +1,11 @@
+diff -uarN matchbox-desktop-0.9.1.orig/configure.ac matchbox-desktop-0.9.1/configure.ac
+--- matchbox-desktop-0.9.1.orig/configure.ac 2005-01-24 09:11:02.000000000 -0500
++++ matchbox-desktop-0.9.1/configure.ac 2014-10-29 14:08:54.882668438 -0400
+@@ -12,6 +12,7 @@
+ AC_PROG_CC
+ AC_LIBTOOL_DLOPEN
+ AC_PROG_LIBTOOL
++LT_LIB_DLLOAD
+
+ AC_HEADER_DIRENT
+ AC_HEADER_STDC
diff --git a/x11-wm/matchbox-desktop/matchbox-desktop-0.9.1.ebuild b/x11-wm/matchbox-desktop/matchbox-desktop-0.9.1.ebuild
new file mode 100644
index 000000000000..1651b6a9e6b6
--- /dev/null
+++ b/x11-wm/matchbox-desktop/matchbox-desktop-0.9.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit versionator autotools eutils
+
+DESCRIPTION="The Matchbox Desktop"
+HOMEPAGE="http://matchbox-project.org/"
+SRC_URI="http://matchbox-project.org/sources/${PN}/$(get_version_component_range 1-2)/${P}.tar.bz2"
+LICENSE="GPL-2"
+SLOT="0"
+
+KEYWORDS="amd64 ~arm ~hppa ppc x86"
+IUSE="debug dnotify startup-notification"
+
+DEPEND=">=x11-libs/libmatchbox-1.5
+ startup-notification? ( x11-libs/startup-notification )"
+
+RDEPEND="${DEPEND}
+ x11-wm/matchbox-common"
+
+src_unpack() {
+ unpack ${A} || die "Failed to unpack"
+ cd "${S}" || die
+ epatch "${FILESDIR}/${P}-dlopen.patch" || die "Patch failed"
+ eautoreconf || die
+}
+
+src_compile() {
+ econf $(use_enable debug) \
+ $(use_enable startup-notification) \
+ $(use_enable dnotify) \
+ || die "Configuration failed"
+
+ emake || die "Compilation failed"
+}
+
+src_install() {
+ make DESTDIR="${D}" install || die "Installation failed"
+
+ dodoc AUTHORS ChangeLog INSTALL NEWS README
+}
diff --git a/x11-wm/matchbox-desktop/metadata.xml b/x11-wm/matchbox-desktop/metadata.xml
new file mode 100644
index 000000000000..0c994964d804
--- /dev/null
+++ b/x11-wm/matchbox-desktop/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>gpe</herd>
+ <use>
+ <flag name="dnotify">Use the linux kernel directory notification feature.</flag>
+ </use>
+</pkgmetadata>
diff --git a/x11-wm/matchbox-panel/Manifest b/x11-wm/matchbox-panel/Manifest
new file mode 100644
index 000000000000..781a6087c6ef
--- /dev/null
+++ b/x11-wm/matchbox-panel/Manifest
@@ -0,0 +1 @@
+DIST matchbox-panel-0.9.3.tar.bz2 162477 SHA256 319b656e2f1f25339d65802a3136f31169141fd54d1ca9131ff4aada62b25ce6 SHA512 370fbbef2434ae55cd6772b0b205c3ae3cfce1ef59fc72d2794847ec8bf67a74a471aec0d179a5177392a566abdfb4dc2c7647a89b76b56cad210067eac49e8d WHIRLPOOL 60e3c02540d66d4f566651414f33dcaebec5ed26d1d448e97b54f5cceb5e5e9602464b728d6d2c1813d1d87f4779ceec9bfd7387d8a53d318e7e1274531b03cb
diff --git a/x11-wm/matchbox-panel/files/matchbox-panel-0.9.3-gcc4-no-nested-functions.patch b/x11-wm/matchbox-panel/files/matchbox-panel-0.9.3-gcc4-no-nested-functions.patch
new file mode 100644
index 000000000000..8dcafbd7d93b
--- /dev/null
+++ b/x11-wm/matchbox-panel/files/matchbox-panel-0.9.3-gcc4-no-nested-functions.patch
@@ -0,0 +1,93 @@
+diff -Naurp matchbox-panel-0.9.3.orig/applets/mb-applet-battery.c matchbox-panel-0.9.3/applets/mb-applet-battery.c
+--- matchbox-panel-0.9.3.orig/applets/mb-applet-battery.c 2006-02-07 22:27:24.000000000 +0000
++++ matchbox-panel-0.9.3/applets/mb-applet-battery.c 2006-06-20 18:12:00.000000000 +0000
+@@ -157,50 +157,50 @@ struct avg_consumption {
+
+ static struct avg_consumption a;
+
++enum ac_state { AC_UNKNOWN = -1, AC_OFFLINE = 0, AC_ONLINE = 1 };
++enum bat_state { BAT_UNKNOWN = -1, BAT_CHARGING = 1, BAT_DISCHARGING = 2 };
++
++struct entry {
++ char *key;
++ char *value;
++ char *unit;
++};
++
++struct acpi_status {
++ enum ac_state ac_state;
++ enum bat_state bat_state;
++ unsigned long design_capacity;
++ unsigned long remaining_capacity;
++ unsigned long present_rate;
++};
++
+ static int
+-read_apm(int *values)
++line_parse(char *line, struct entry *e)
+ {
+- enum ac_state { AC_UNKNOWN = -1, AC_OFFLINE = 0, AC_ONLINE = 1 };
+- enum bat_state { BAT_UNKNOWN = -1, BAT_CHARGING = 1, BAT_DISCHARGING = 2 };
+-
+- struct entry {
+- char *key;
+- char *value;
+- char *unit;
+- };
+-
+- struct acpi_status {
+- enum ac_state ac_state;
+- enum bat_state bat_state;
+- unsigned long design_capacity;
+- unsigned long remaining_capacity;
+- unsigned long present_rate;
+- };
++ char *ptr;
+
+- static int
+- line_parse(char *line, struct entry *e)
+- {
+- char *ptr;
+-
+- ptr = strchr(line, ':');
+- if (!ptr)
+- return -1;
+- e->key = line;
+- *ptr = 0;
+- while (*++ptr && *ptr == ' ');
+- e->value = ptr;
+- while (*++ptr && *ptr != '\n' && *ptr != ' ');
++ ptr = strchr(line, ':');
++ if (!ptr)
++ return -1;
++ e->key = line;
++ *ptr = 0;
++ while (*++ptr && *ptr == ' ');
++ e->value = ptr;
++ while (*++ptr && *ptr != '\n' && *ptr != ' ');
++ *ptr = 0;
++ if (*++ptr) {
++ e->unit = ptr;
++ while (*++ptr && *ptr != '\n');
+ *ptr = 0;
+- if (*++ptr) {
+- e->unit = ptr;
+- while (*++ptr && *ptr != '\n');
+- *ptr = 0;
+- } else
+- e->unit = 0;
+-
+- return 0;
+- }
++ } else
++ e->unit = 0;
++
++ return 0;
++}
+
++static int
++read_apm(int *values)
++{
+ FILE *f;
+ char line[1024];
+ struct entry e;
diff --git a/x11-wm/matchbox-panel/files/matchbox-panel-0.9.3-wifi.patch b/x11-wm/matchbox-panel/files/matchbox-panel-0.9.3-wifi.patch
new file mode 100644
index 000000000000..d36a2eb8df0a
--- /dev/null
+++ b/x11-wm/matchbox-panel/files/matchbox-panel-0.9.3-wifi.patch
@@ -0,0 +1,43 @@
+diff -Naurp matchbox-panel-0.9.3.orig/configure.ac matchbox-panel-0.9.3/configure.ac
+--- matchbox-panel-0.9.3.orig/configure.ac 2006-03-07 18:46:39.000000000 +0000
++++ matchbox-panel-0.9.3/configure.ac 2010-05-18 13:10:59.000000000 +0000
+@@ -56,6 +56,10 @@ AC_ARG_ENABLE(acpi-linux,
+ [ --enable-acpi-linux Use Linux ACPI rather than APM for battery info],
+ enable_acpi_linux=$enableval, enable_acpi_linux=no )
+
++AC_ARG_ENABLE(wireless-tools,
++ [ --enable-wireless-tools enable building of wifi applet],
++ enable_wireless_tools=$enableval, enable_wireless_tools=no )
++
+ PKG_CHECK_MODULES(LIBMB, libmb >= 1.6,,
+ AC_MSG_ERROR([*** Required Matchbox Library (libmb) 1.6 not installed ***]))
+
+@@ -209,17 +213,20 @@ AM_CONDITIONAL(WANT_ACPI, test x$enable_
+
+ dnl ------ wireless checks --------------------------------------------------
+
+-wifi_enabled=no
+-
+-AC_CHECK_HEADERS(iwlib.h, have_iwlib_h=yes, have_iwlib_h=no)
+-AC_CHECK_LIB(iw, iw_sockets_open, have_libiw=yes, have_libiw=yes)
++if test x$enable_wireless_tools = xyes; then
++ AC_CHECK_HEADERS(iwlib.h, have_iwlib_h=yes,
++ AC_MSG_ERROR([Unable to find the wireless-tools headers]))
++ AC_CHECK_LIB(iw, iw_sockets_open, have_libiw=yes,
++ AC_MSG_ERROR([Unable to find the wireless-tools library]))
+
+-if test x$have_iwlib_h = x"yes" && test x$have_libiw = x"yes"; then
+- WIRELESS_LIBS="-liw"
+- wifi_enabled=yes
++ WIRELESS_LIBS="-liw"
++ wifi_enabled=yes
++else
++ WIRELESS_LIBS=""
++ wifi_enabled=no
+ fi
+-AC_SUBST(WIRELESS_LIBS)
+
++AC_SUBST(WIRELESS_LIBS)
+ AM_CONDITIONAL(WANT_WIFI, test x$wifi_enabled = x"yes")
+
+
diff --git a/x11-wm/matchbox-panel/matchbox-panel-0.9.3-r1.ebuild b/x11-wm/matchbox-panel/matchbox-panel-0.9.3-r1.ebuild
new file mode 100644
index 000000000000..624cc40a52cc
--- /dev/null
+++ b/x11-wm/matchbox-panel/matchbox-panel-0.9.3-r1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils autotools versionator
+
+DESCRIPTION="The Matchbox Panel"
+HOMEPAGE="http://matchbox-project.org/"
+SRC_URI="http://matchbox-project.org/sources/${PN}/$(get_version_component_range 1-2)/${P}.tar.bz2"
+LICENSE="GPL-2"
+SLOT="0"
+
+KEYWORDS="amd64 ~arm ~hppa ppc x86"
+IUSE="acpi debug dnotify lowres nls startup-notification wifi"
+
+DEPEND=">=x11-libs/libmatchbox-1.5
+ startup-notification? ( x11-libs/startup-notification )
+ nls? ( sys-devel/gettext )
+ wifi? ( net-wireless/wireless-tools )"
+
+RDEPEND="${DEPEND}
+ x11-wm/matchbox-common"
+
+src_unpack () {
+ unpack ${A}
+ cd "${S}"
+
+ epatch "${FILESDIR}/"${P}-gcc4-no-nested-functions.patch
+ epatch "${FILESDIR}/"${P}-wifi.patch
+ sed -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/" -i configure.ac || die
+
+ eautoreconf
+}
+
+src_compile() {
+ econf $(use_enable debug) \
+ $(use_enable nls) \
+ $(use_enable startup-notification) \
+ $(use_enable dnotify) \
+ $(use_enable acpi acpi-linux) \
+ $(use_enable lowres small-icons) \
+ $(use_enable wifi wireless-tools) \
+ || die "Configuration failed"
+
+ emake || die "Compilation failed"
+}
+
+src_install() {
+ make DESTDIR="${D}" install || die "Installation failed"
+
+ dodoc AUTHORS ChangeLog INSTALL NEWS README
+}
diff --git a/x11-wm/matchbox-panel/metadata.xml b/x11-wm/matchbox-panel/metadata.xml
new file mode 100644
index 000000000000..26f436c695d4
--- /dev/null
+++ b/x11-wm/matchbox-panel/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>gpe</herd>
+ <use>
+ <flag name="dnotify">Use the linux kernel directory notification feature.</flag>
+ <flag name="lowres">Optimize for low resolution screens.</flag>
+ </use>
+</pkgmetadata>
diff --git a/x11-wm/matchbox-window-manager/Manifest b/x11-wm/matchbox-window-manager/Manifest
new file mode 100644
index 000000000000..9af88302aa3b
--- /dev/null
+++ b/x11-wm/matchbox-window-manager/Manifest
@@ -0,0 +1 @@
+DIST matchbox-window-manager-1.2.tar.bz2 208813 SHA256 81a23a4af797cf350759fd5ac738797015a66dd5dba2f3d9f3c6908506c1ceff SHA512 a603ef2da6fef4caa87980765b64d0f84f19fdb29a181e2a0c442846a09e42984c97b5a11c9ceb37a5e9db9915acc2733fbb6b2af9c0afb11917edbdb50c3b24 WHIRLPOOL a46ec32450aeedf33a927ceebde0c9e481b444a3e50c733ea6eabc6d193669ab7eec2799d0adf0160e613aeb50b96719b3be35675245cc2a6b60f50737ca54eb
diff --git a/x11-wm/matchbox-window-manager/files/matchbox-window-manager-1.0-use-nopng.patch b/x11-wm/matchbox-window-manager/files/matchbox-window-manager-1.0-use-nopng.patch
new file mode 100644
index 000000000000..881567d9b96d
--- /dev/null
+++ b/x11-wm/matchbox-window-manager/files/matchbox-window-manager-1.0-use-nopng.patch
@@ -0,0 +1,27 @@
+diff -Naurp matchbox-window-manager-1.0.orig/src/structs.h matchbox-window-manager-1.0/src/structs.h
+--- matchbox-window-manager-1.0.orig/src/structs.h 2006-02-19 16:00:52.000000000 -0500
++++ matchbox-window-manager-1.0/src/structs.h 2006-06-12 18:52:53.000000000 -0400
+@@ -81,23 +81,12 @@
+
+ #define GENERIC_ICON PKGDATADIR "/mbnoapp.xpm"
+
+-#ifdef MB_HAVE_PNG
+-
+ #define DEFAULT_THEME DATADIR "/themes/Default/matchbox/theme.xml"
+-
+ #define DEFAULTTHEME DATADIR "/themes/Default/matchbox/theme.xml"
+
+ #define DEFAULT_THEMENAME "Default"
+-
+ #define DEFAULTTHEMENAME "Default"
+
+-#else
+-
+-#define DEFAULT_THEME DATADIR "/themes/Default/matchbox/theme.xml"
+-#define DEFAULT_THEME_NAME "Default"
+-
+-#endif
+-
+ #define CONFDEFAULTS PKGDATADIR "/defaults"
+
+ /* Simple Macros */
diff --git a/x11-wm/matchbox-window-manager/matchbox-window-manager-1.2-r1.ebuild b/x11-wm/matchbox-window-manager/matchbox-window-manager-1.2-r1.ebuild
new file mode 100644
index 000000000000..71be316d1daf
--- /dev/null
+++ b/x11-wm/matchbox-window-manager/matchbox-window-manager-1.2-r1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+
+inherit eutils versionator gnome2
+
+DESCRIPTION="Light weight WM designed for use on PDA computers"
+HOMEPAGE="http://matchbox-project.org/"
+SRC_URI="http://matchbox-project.org/sources/${PN}/$(get_version_component_range 1-2)/${P}.tar.bz2"
+SLOT="0"
+LICENSE="GPL-2"
+
+KEYWORDS="amd64 ~arm ~hppa ppc x86"
+IUSE="debug expat gnome session startup-notification xcomposite"
+
+RDEPEND="
+ >=x11-libs/libmatchbox-1.5
+ expat? ( dev-libs/expat )
+ gnome? ( gnome-base/gconf )
+ startup-notification? ( x11-libs/startup-notification )
+ session? ( x11-libs/libSM )
+ xcomposite? (
+ x11-libs/libXcomposite
+ x11-libs/libXdamage )
+"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ # Allows to build with USE=-png
+ epatch "${FILESDIR}"/${PN}-1.0-use-nopng.patch
+ gnome2_src_prepare
+}
+
+src_configure() {
+ gnome2_src_configure \
+ --enable-keyboard \
+ --enable-ping-protocol \
+ --enable-xrm \
+ $(use_enable debug) \
+ $(use_enable session) \
+ $(use_enable expat) \
+ $(use_enable gnome gconf) \
+ $(use_enable startup-notification) \
+ $(use_enable xcomposite composite)
+}
diff --git a/x11-wm/matchbox-window-manager/metadata.xml b/x11-wm/matchbox-window-manager/metadata.xml
new file mode 100644
index 000000000000..6a17403e0ad0
--- /dev/null
+++ b/x11-wm/matchbox-window-manager/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>gpe</herd>
+</pkgmetadata>
diff --git a/x11-wm/matchbox/matchbox-1.0.ebuild b/x11-wm/matchbox/matchbox-1.0.ebuild
new file mode 100644
index 000000000000..53cb9af2bbd6
--- /dev/null
+++ b/x11-wm/matchbox/matchbox-1.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="Light weight WM designed for use on PDA computers"
+HOMEPAGE="http://matchbox-project.org/"
+LICENSE="metapackage"
+SLOT="0"
+IUSE="minimal"
+
+# when unmasking for an arch
+# double check none of the deps are still masked !
+KEYWORDS="amd64 ~arm ~hppa ppc x86"
+
+RDEPEND="x11-wm/matchbox-common
+ x11-wm/matchbox-desktop
+ x11-wm/matchbox-panel
+ x11-wm/matchbox-window-manager
+ !minimal? ( x11-misc/matchbox-keyboard
+ x11-themes/matchbox-themes-extra
+ x11-plugins/matchbox-applet-input-manager
+ x11-plugins/matchbox-applet-startup-monitor
+ x11-plugins/matchbox-applet-volume )"
+
+# Alpha quality plug-ins:
+#IUSE="$IUSE xine"
+# x11-plugins/matchbox-desktop-image-browser
+# xine? ( x11-plugins/matchbox-desktop-xine ) )"
+
+S="${WORKDIR}"
diff --git a/x11-wm/matchbox/metadata.xml b/x11-wm/matchbox/metadata.xml
new file mode 100644
index 000000000000..6a17403e0ad0
--- /dev/null
+++ b/x11-wm/matchbox/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>gpe</herd>
+</pkgmetadata>
diff --git a/x11-wm/matwm2/Manifest b/x11-wm/matwm2/Manifest
new file mode 100644
index 000000000000..1e8fb6b98ac5
--- /dev/null
+++ b/x11-wm/matwm2/Manifest
@@ -0,0 +1 @@
+DIST matwm2-0.1.1.tar.gz 64552 SHA256 b85de9adc2118a7305a9015b57183117a4dbebf52b1ae4ac688e8f276319beb7
diff --git a/x11-wm/matwm2/files/matwm2-0.0.96-Makefile.patch b/x11-wm/matwm2/files/matwm2-0.0.96-Makefile.patch
new file mode 100644
index 000000000000..16d86a036d40
--- /dev/null
+++ b/x11-wm/matwm2/files/matwm2-0.0.96-Makefile.patch
@@ -0,0 +1,23 @@
+--- Makefile
++++ Makefile
+@@ -4,10 +4,8 @@
+ CC = cc
+ RM = rm -f
+
+-CFLAGS += -I$(XROOT)/include # remove the + for this and the next line if make complains about being unable to add to a non-existing macro
+-LDFLAGS += -lX11 -L$(XROOT)/lib
+ CFLAGS += -DSHAPE # comment out this line to disable shape support
+-LDFLAGS += -lXext # if shape support is disabled, this normally is no longer necessary and schould probally be commented out too
++LIBS += -lXext -lX11 # if shape support is disabled, this normally is no longer necessary and schould probally be commented out too
+
+ #CFLAGS += -DDEBUG -ggdb3 # -DDEBUG_EVENTS -DSYNC # for debugging
+ CFLAGS += -Wall -Wextra -Wno-unused-parameter
+@@ -19,7 +17,7 @@
+ all: matwm2
+
+ matwm2: $(OBJFILES) $(HEADERS)
+- $(CC) -o $@ $(OBJFILES) $(LDFLAGS)
++ $(CC) $(LDFLAGS) -o $@ $(OBJFILES) $(LIBS)
+
+ clean:
+ $(RM) matwm2 *.o
diff --git a/x11-wm/matwm2/files/matwm2.desktop b/x11-wm/matwm2/files/matwm2.desktop
new file mode 100644
index 000000000000..e15f8e95d0a0
--- /dev/null
+++ b/x11-wm/matwm2/files/matwm2.desktop
@@ -0,0 +1,5 @@
+[Desktop Entry]
+Version=1.0
+Name=matwm2
+Exec=matwm2
+Type=Application
diff --git a/x11-wm/matwm2/matwm2-0.1.1.ebuild b/x11-wm/matwm2/matwm2-0.1.1.ebuild
new file mode 100644
index 000000000000..5c06e5a6a7d7
--- /dev/null
+++ b/x11-wm/matwm2/matwm2-0.1.1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit toolchain-funcs
+
+DESCRIPTION="Simple EWMH compatible window manager with titlebars and frames"
+HOMEPAGE="http://squidjam.com/matwm/"
+SRC_URI="http://squidjam.com/matwm/pub/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug xft xinerama"
+
+RDEPEND="
+ x11-libs/libXext
+ x11-libs/libX11
+ debug? ( x11-proto/xproto )
+ xft? ( x11-libs/libXft )
+ xinerama? ( x11-libs/libXinerama )
+"
+DEPEND="
+ ${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/xextproto
+ xinerama? ( x11-proto/xineramaproto )
+"
+
+src_configure() {
+ # configure is not autotools based
+ # --disable-shape left out because the code is broken
+ ./configure \
+ $( use debug && echo --enable-debug ) \
+ $( use xft || echo --disable-xft ) \
+ $( use xinerama || echo --disable-xinerama ) \
+ || die
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ dobin ${PN}
+ doman ${PN}.1
+ dodoc BUGS ChangeLog default_matwmrc README TODO
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/${PN}.desktop
+
+ echo ${PN} > "${T}"/${PN}
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/${PN}
+}
diff --git a/x11-wm/matwm2/metadata.xml b/x11-wm/matwm2/metadata.xml
new file mode 100644
index 000000000000..4538a68724a6
--- /dev/null
+++ b/x11-wm/matwm2/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>maintainer-needed@gentoo.org</email></maintainer>
+</pkgmetadata>
diff --git a/x11-wm/metadata.xml b/x11-wm/metadata.xml
new file mode 100644
index 000000000000..4e0a0d83bfbf
--- /dev/null
+++ b/x11-wm/metadata.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<catmetadata>
+ <longdescription lang="en">
+ The x11-wm category contains X11 window managers.
+ </longdescription>
+ <longdescription lang="de">
+ Die Kategorie x11-wm enthält verschiedene Window Manager für X11.
+ </longdescription>
+ <longdescription lang="es">
+ La categoría x11-wm contiene manejadores de ventanas para X11.
+ </longdescription>
+ <longdescription lang="ja">
+ x11-wmカテゴリーにはX11のウィンドゥ・マネージャーが含まれています。
+ </longdescription>
+ <longdescription lang="nl">
+ De x11-wm categorie bevat verschillende window managers voor X11.
+ </longdescription>
+ <longdescription lang="sk">
+ Kategória x11-wm obsahuje správcov okien (window managers) pre X11.
+ </longdescription>
+ <longdescription lang="vi">
+ Nhóm x11-wm chứa các trình quản lý cửa sổ X11.
+ </longdescription>
+ <longdescription lang="it">
+ La categoria x11-wm contiene dei gestori di finestre per X11.
+ </longdescription>
+ <longdescription lang="pt">
+ A categoria x11-wm contém gerenciadores de janelas para X11.
+ </longdescription>
+ <longdescription lang="pl">
+ Kategoria x11-wm zawiera menedżery okien dla środowisk X11.
+ </longdescription>
+</catmetadata>
+
diff --git a/x11-wm/muffin/Manifest b/x11-wm/muffin/Manifest
new file mode 100644
index 000000000000..17643af2e7c2
--- /dev/null
+++ b/x11-wm/muffin/Manifest
@@ -0,0 +1,3 @@
+DIST muffin-2.4.4.tar.gz 2706446 SHA256 027641f3bc12a5770f063ffbf9ff0a4797768d256449941ae0be779700b90805 SHA512 57321f73af81dd9e03ec81b56fec83a5a154f06fcfe113a8129aaa279f0e11bed446efe98693aa52f7d490b4ddc73ba76db237d75dfff7b670427b3c8fc8abff WHIRLPOOL 7c9ae74c3053b2d2eed876d63e509d02ff693fdd88aedf4ab835a7bf5105a098c1ca99ec36e35d2d24ae352a7caeaa661693e1532a30e14cb4044c2b6821dd58
+DIST muffin-2.4.5.tar.gz 2706742 SHA256 b38d62cb0d4ec9e213cc41501bda0d4712eebab7cd4fbc5ca0bdf8b5e74f83f7 SHA512 f8a791d88823197f8b727e00cd67e22adabbdf6fbad3a1ebd1a75087a48e09ad4c39b9b5550303db661c54937f5f42e25c2ac47ccdd98d281b4ff9aad5f5d71f WHIRLPOOL 6d9ff8ee2a09040baa8930006a4e48a6ab6ee7082a56a30826b1f57e6a317aa942a3dc1d4aafe993ce54209fb8e20bf0cb759a9fe2a4547afaa3d870ce0da72f
+DIST muffin-2.6.1.tar.gz 2702177 SHA256 0772ad6caace2f4570e7d3a0cbc8a6ef5f65be92c6a30cc95a59ed8bba6b5f74 SHA512 530e4bdabb780a16ddad237ab7aa1c2dbb688f6d1380dd0d18fa91b62675d36a2253415899d59957b7f34291c348b8a0e1a99214c3151c2fc2bc1d90f068d788 WHIRLPOOL d6832ac81051845432b21f66ff74499213f57dc66bea7d61f0a30c3a0aec54846911447451b8b54ccb0678ed00dfad90ce9cef9b2f2492d44e7c35adad2c5a24
diff --git a/x11-wm/muffin/metadata.xml b/x11-wm/muffin/metadata.xml
new file mode 100644
index 000000000000..fc4050a85c75
--- /dev/null
+++ b/x11-wm/muffin/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>gnome</herd>
+ <upstream>
+ <remote-id type="github">linuxmint/muffin</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/x11-wm/muffin/muffin-2.4.4.ebuild b/x11-wm/muffin/muffin-2.4.4.ebuild
new file mode 100644
index 000000000000..95d64432743c
--- /dev/null
+++ b/x11-wm/muffin/muffin-2.4.4.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools eutils gnome2 python-any-r1
+
+DESCRIPTION="Compositing window manager forked from Mutter for use with Cinnamon"
+HOMEPAGE="http://cinnamon.linuxmint.com/"
+SRC_URI="https://github.com/linuxmint/muffin/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="+introspection test xinerama"
+KEYWORDS="amd64 x86"
+
+COMMON_DEPEND="
+ >=x11-libs/pango-1.2[X,introspection?]
+ >=x11-libs/cairo-1.10:=[X]
+ x11-libs/gdk-pixbuf:2[introspection?]
+ >=x11-libs/gtk+-3.3.7:3[X,introspection?]
+ >=dev-libs/glib-2.25.10:2
+ >=gnome-extra/cinnamon-desktop-2.3:0=[introspection?]
+ >=gnome-base/gsettings-desktop-schemas-3.3.0[introspection?]
+ >=media-libs/clutter-1.9.10:1.0=[introspection?]
+ >=media-libs/cogl-1.9.6:1.0=[introspection?]
+ >=media-libs/libcanberra-0.26[gtk3]
+ >=x11-libs/libXcomposite-0.2
+ >=x11-libs/startup-notification-0.7:=
+
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ virtual/opengl
+
+ gnome-extra/zenity
+
+ introspection? ( >=dev-libs/gobject-introspection-0.9.5 )
+ xinerama? ( x11-libs/libXinerama )
+"
+DEPEND="${COMMON_DEPEND}
+ ${PYTHON_DEPS}
+ >=app-text/gnome-doc-utils-0.8
+ sys-devel/gettext
+ >=dev-util/intltool-0.35
+ virtual/pkgconfig
+ test? ( app-text/docbook-xml-dtd:4.5 )
+ xinerama? ( x11-proto/xineramaproto )
+ x11-proto/xextproto
+ x11-proto/xproto
+"
+RDEPEND="${COMMON_DEPEND}
+ !x11-misc/expocity
+"
+
+src_prepare() {
+ epatch_user
+ eautoreconf
+ gnome2_src_prepare
+}
+
+src_configure() {
+ DOCS="AUTHORS ChangeLog HACKING MAINTAINERS NEWS README* *.txt doc/*.txt"
+ gnome2_src_configure \
+ --disable-static \
+ --enable-shape \
+ --enable-sm \
+ --enable-startup-notification \
+ --enable-xsync \
+ --enable-verbose-mode \
+ --with-libcanberra \
+ $(use_enable introspection) \
+ $(use_enable xinerama)
+}
diff --git a/x11-wm/muffin/muffin-2.4.5.ebuild b/x11-wm/muffin/muffin-2.4.5.ebuild
new file mode 100644
index 000000000000..3678ea2d0462
--- /dev/null
+++ b/x11-wm/muffin/muffin-2.4.5.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools eutils gnome2 python-any-r1
+
+DESCRIPTION="Compositing window manager forked from Mutter for use with Cinnamon"
+HOMEPAGE="http://cinnamon.linuxmint.com/"
+SRC_URI="https://github.com/linuxmint/muffin/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="+introspection test xinerama"
+KEYWORDS="amd64 x86"
+
+COMMON_DEPEND="
+ >=x11-libs/pango-1.2[X,introspection?]
+ >=x11-libs/cairo-1.10:=[X]
+ x11-libs/gdk-pixbuf:2[introspection?]
+ >=x11-libs/gtk+-3.3.7:3[X,introspection?]
+ >=dev-libs/glib-2.25.10:2[dbus]
+ >=gnome-extra/cinnamon-desktop-2.3:0=[introspection?]
+ >=gnome-base/gsettings-desktop-schemas-3.3.0[introspection?]
+ >=media-libs/clutter-1.9.10:1.0=[introspection?]
+ >=media-libs/cogl-1.9.6:1.0=[introspection?]
+ >=media-libs/libcanberra-0.26[gtk3]
+ >=x11-libs/libXcomposite-0.2
+ >=x11-libs/startup-notification-0.7:=
+
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ virtual/opengl
+
+ gnome-extra/zenity
+
+ introspection? ( >=dev-libs/gobject-introspection-0.9.5:= )
+ xinerama? ( x11-libs/libXinerama )
+"
+DEPEND="${COMMON_DEPEND}
+ ${PYTHON_DEPS}
+ >=app-text/gnome-doc-utils-0.8
+ sys-devel/gettext
+ >=dev-util/intltool-0.35
+ virtual/pkgconfig
+ test? ( app-text/docbook-xml-dtd:4.5 )
+ xinerama? ( x11-proto/xineramaproto )
+ x11-proto/xextproto
+ x11-proto/xproto
+"
+RDEPEND="${COMMON_DEPEND}
+ !x11-misc/expocity
+"
+
+src_prepare() {
+ epatch_user
+ eautoreconf
+ gnome2_src_prepare
+}
+
+src_configure() {
+ DOCS="AUTHORS ChangeLog HACKING MAINTAINERS NEWS README* *.txt doc/*.txt"
+ gnome2_src_configure \
+ --disable-static \
+ --enable-shape \
+ --enable-sm \
+ --enable-startup-notification \
+ --enable-xsync \
+ --enable-verbose-mode \
+ --with-libcanberra \
+ $(use_enable introspection) \
+ $(use_enable xinerama)
+}
diff --git a/x11-wm/muffin/muffin-2.6.1.ebuild b/x11-wm/muffin/muffin-2.6.1.ebuild
new file mode 100644
index 000000000000..9caa380f2154
--- /dev/null
+++ b/x11-wm/muffin/muffin-2.6.1.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools eutils gnome2 python-any-r1
+
+DESCRIPTION="Compositing window manager forked from Mutter for use with Cinnamon"
+HOMEPAGE="http://cinnamon.linuxmint.com/"
+SRC_URI="https://github.com/linuxmint/muffin/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="+introspection test xinerama"
+KEYWORDS="~amd64 ~x86"
+
+COMMON_DEPEND="
+ >=x11-libs/pango-1.2[X,introspection?]
+ >=x11-libs/cairo-1.14:=[X]
+ x11-libs/gdk-pixbuf:2[introspection?]
+ >=x11-libs/gtk+-3.9.12:3[X,introspection?]
+ >=dev-libs/glib-2.37.3:2[dbus]
+ >=gnome-extra/cinnamon-desktop-2.4:0=[introspection?]
+ >=gnome-base/gsettings-desktop-schemas-3.3.0[introspection?]
+ >=media-libs/clutter-1.10.10:1.0=[introspection?]
+ >=media-libs/cogl-1.9.6:1.0=[introspection?]
+ >=media-libs/libcanberra-0.26[gtk3]
+ >=x11-libs/libXcomposite-0.3
+ >=x11-libs/startup-notification-0.7:=
+
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ virtual/opengl
+
+ gnome-extra/zenity
+
+ introspection? ( >=dev-libs/gobject-introspection-0.9.5:= )
+ xinerama? ( x11-libs/libXinerama )
+"
+# needs gtk-doc, not just -am, for gtk-doc.make
+DEPEND="${COMMON_DEPEND}
+ ${PYTHON_DEPS}
+ >=app-text/gnome-doc-utils-0.8
+ sys-devel/gettext
+ dev-util/gtk-doc
+ dev-util/gtk-doc-am
+ >=dev-util/intltool-0.35
+ virtual/pkgconfig
+ test? ( app-text/docbook-xml-dtd:4.5 )
+ xinerama? ( x11-proto/xineramaproto )
+ x11-proto/xextproto
+ x11-proto/xproto
+"
+RDEPEND="${COMMON_DEPEND}
+ !x11-misc/expocity
+"
+
+src_prepare() {
+ epatch_user
+ eautoreconf
+ gnome2_src_prepare
+}
+
+src_configure() {
+ DOCS="AUTHORS ChangeLog HACKING MAINTAINERS NEWS README* *.txt doc/*.txt"
+ gnome2_src_configure \
+ --disable-static \
+ --enable-shape \
+ --enable-sm \
+ --enable-startup-notification \
+ --enable-xsync \
+ --enable-verbose-mode \
+ --with-libcanberra \
+ $(use_enable introspection) \
+ $(use_enable xinerama)
+}
diff --git a/x11-wm/musca/Manifest b/x11-wm/musca/Manifest
new file mode 100644
index 000000000000..789fb970f21a
--- /dev/null
+++ b/x11-wm/musca/Manifest
@@ -0,0 +1 @@
+DIST musca-0.9.24_p20100226.tgz 81490 SHA256 63167c76fa5ea9381685d209e12b795001d8d0d183b22a6578f255b56ca87676 SHA512 9030931dbc332fce144edc6bea907d86aab1eef6b1384958a7889b533af5065a2f20b7233ea063648fff0eb468c2083a310e38586c2c4d83848c773fb1984f45 WHIRLPOOL 79b45f6c48fc1e263baddc4fa14dce737824b02ed4a0ccd2199d4ac968aae4044e0487f9350278c8e5674d14f7241bd676c4ab96cdec7f0a6f0c2b7b6f246829
diff --git a/x11-wm/musca/files/musca-0.9.24-make.patch b/x11-wm/musca/files/musca-0.9.24-make.patch
new file mode 100644
index 000000000000..0f28c5653c7b
--- /dev/null
+++ b/x11-wm/musca/files/musca-0.9.24-make.patch
@@ -0,0 +1,23 @@
+--- a/Makefile 2009-11-03 03:20:21.000000000 +0100
++++ b/Makefile 2009-12-27 19:12:02.461539607 +0100
+@@ -1,9 +1,12 @@
+-CFLAGS?=-Wall -g
++CFLAGS ?= -Wall -g
++INCLUDES = $(shell pkg-config --cflags x11)
++LIBS = $(shell pkg-config --libs x11) -lm
++BIN_DIST = musca apis xlisten
+
+-all:
+- $(CC) $(CFLAGS) -I/usr/X11R6/include -L/usr/X11R6/lib -lc -lm -lX11 -o musca musca.c
+- $(CC) $(CFLAGS) -I/usr/X11R6/include -L/usr/X11R6/lib -lc -lm -lX11 -o apis apis.c
+- $(CC) $(CFLAGS) -I/usr/X11R6/include -L/usr/X11R6/lib -lc -lm -lX11 -o xlisten xlisten.c
++all: $(BIN_DIST)
++
++$(BIN_DIST):
++ $(CC) $(CFLAGS) $(INCLUDES) $@.c -o $@ $(LDFLAGS) $(LIBS)
+
+ clean:
+- rm -f musca apis
++ rm -f $(BIN_DIST)
++
++.PHONY: all clean
diff --git a/x11-wm/musca/files/musca-0.9.24_p20100226-dmenu-4.4.patch b/x11-wm/musca/files/musca-0.9.24_p20100226-dmenu-4.4.patch
new file mode 100644
index 000000000000..ce6bc45de73e
--- /dev/null
+++ b/x11-wm/musca/files/musca-0.9.24_p20100226-dmenu-4.4.patch
@@ -0,0 +1,44 @@
+https://bugs.archlinux.org/task/25232
+https://bugs.launchpad.net/musca/+bug/816890
+
+--- a/musca.c
++++ b/musca.c
+@@ -2162,8 +2162,16 @@ void launch(char *cmd)
+ }
+ void menu(char *cmd, char *after)
+ {
++ // we keep original behaviour by sorting
+ char *tmp = allocate(strlen(cmd)+strlen(after)+BLOCK);
+- sprintf(tmp, "%s | %s | %s", cmd, settings[ms_dmenu].s, after);
++ sprintf(tmp, "%s | sort | dmenu %s | %s", cmd, settings[ms_dmenu].s, after);
++ printf("%s\n", tmp);
++ launch(tmp); free(tmp);
++}
++void menufix(char *cmd, char*after)
++{
++ char *tmp = allocate(strlen(cmd)+strlen(after)+BLOCK);
++ sprintf(tmp, "%s %s | %s",cmd, settings[ms_dmenu].s, after);
+ printf("%s\n", tmp);
+ launch(tmp); free(tmp);
+ }
+@@ -2631,7 +2639,7 @@ char* com_command(char *cmd, regmatch_t *subs)
+ }
+ char* com_shell(char *cmd, regmatch_t *subs)
+ {
+- menu("dmenu_path", settings[ms_run_shell_command].s);
++ menufix("dmenu_run", settings[ms_run_shell_command].s);
+ return NULL;
+ }
+ char* com_alias(char *cmd, regmatch_t *subs)
+diff --git a/musca_proto.h b/musca_proto.h
+index dc14d75..e25c1ea 100644
+--- a/musca_proto.h
++++ b/musca_proto.h
+@@ -145,6 +145,7 @@ void head_focus(head *h);
+ void head_next();
+ void launch(char *cmd);
+ void menu(char *cmd, char *after);
++void menufix(char *cmd, char *after);
+ void menu_wrapper(char *cmd, char *after);
+ void shutdown();
+ dcell parse_size(char *cmd, regmatch_t *subs, ucell index, ucell limit);
diff --git a/x11-wm/musca/files/musca-0.9.24_p20100226-fix-cycle.patch b/x11-wm/musca/files/musca-0.9.24_p20100226-fix-cycle.patch
new file mode 100644
index 000000000000..6765ebcdcf7d
--- /dev/null
+++ b/x11-wm/musca/files/musca-0.9.24_p20100226-fix-cycle.patch
@@ -0,0 +1,11 @@
+--- a/musca.c
++++ b/musca.c
+@@ -3202,7 +3202,7 @@ void mapnotify(XEvent *ev)
+ handle_map(ws);
+ head *h = head_by_root(ws->attr.root);
+ if (is_netwmstate(ws->state, NetWMStateFullscreen))
+- stack_push(h->fullscreen, (void*)ws);
++ stack_push(h->fullscreen, (void*)ws->w);
+ else
+ if (ws->attr.override_redirect || is_netwmstate(ws->state, NetWMStateAbove))
+ stack_push(h->above, (void*)ws->w);
diff --git a/x11-wm/musca/files/musca-0.9.24_p20100226-fix-pad.patch b/x11-wm/musca/files/musca-0.9.24_p20100226-fix-pad.patch
new file mode 100644
index 000000000000..23bd9283467a
--- /dev/null
+++ b/x11-wm/musca/files/musca-0.9.24_p20100226-fix-pad.patch
@@ -0,0 +1,21 @@
+--- a/musca.c
++++ b/musca.c
+@@ -1985,7 +1985,8 @@ void group_other()
+ // resize frames to match changes in the screen border padding
+ void group_resize(group *ta, int l, int r, int t, int b)
+ {
+- frame *f = ta->frames; int i;
++ frame *f = ta->frames; int i, j;
++ client *c = ta->clients;
+ int sw = ta->head->screen->width;
+ int sh = ta->head->screen->height;
+ if (l < ta->l) { frames_fill_gap(ta, l, ta->t, ta->l - l, sh - ta->b, FRAMES_ALL); ta->l = l; }
+@@ -1998,6 +1999,8 @@ void group_resize(group *ta, int l, int r, int t, int b)
+ else if (b > ta->b) { frames_make_gap(ta, ta->l, sh - b, sw - ta->l - ta->r, b - ta->b); ta->b = b; }
+ FOR_RING (NEXT, f, ta->frames, i)
+ frame_update(f);
++ FOR_RING (NEXT, c, ta->clients, j)
++ client_configure(c,NULL);
+ }
+ group* group_by_name(head *h, char *name)
+ {
diff --git a/x11-wm/musca/files/musca-0.9.24_p20100226-null.patch b/x11-wm/musca/files/musca-0.9.24_p20100226-null.patch
new file mode 100644
index 000000000000..6efb77ff0b35
--- /dev/null
+++ b/x11-wm/musca/files/musca-0.9.24_p20100226-null.patch
@@ -0,0 +1,151 @@
+https://bugs.launchpad.net/musca/+bug/1236500
+
+
+--- a/musca.c
++++ b/musca.c
+@@ -421,7 +421,7 @@
+ if (s->depth)
+ {
+ int *indexes = allocate(sizeof(int) * s->depth);
+- int count = 0, i; Window *w;
++ int count = 0, i; Window *w = NULL;
+ FOR_STACK (w, s, Window*, i)
+ {
+ note("%d", i);
+@@ -1673,7 +1673,6 @@
+ frame *f = t->frames;
+ frame **group = NULL;
+ int i = 0, x, y, w, h;
+- ubyte changes = 0;
+ if (direction == HORIZONTAL)
+ {
+ if (f->x + f->w >= t->head->screen->width - t->r)
+@@ -1684,7 +1683,6 @@
+ group = frame_siblings(f, LEFT);
+ if (frame_siblings_growable(group, LEFT, size))
+ {
+- changes = 1;
+ x = f->x - size; w = size; y = f->y; h = 0;
+ for (i = 0; group[i]; i++)
+ y = MIN(y, group[i]->y), h += group[i]->h;
+@@ -1702,7 +1700,6 @@
+ group = frame_siblings(f, RIGHT);
+ if (frame_siblings_growable(group, RIGHT, size))
+ {
+- changes = 1;
+ x = f->x + f->w; w = size; y = f->y; h = 0;
+ for (i = 0; group[i]; i++)
+ y = MIN(y, group[i]->y), h += group[i]->h;
+@@ -1725,7 +1722,6 @@
+ group = frame_siblings(f, TOP);
+ if (frame_siblings_growable(group, TOP, size))
+ {
+- changes = 1;
+ y = f->y - size; h = size; x = f->x; w = 0;
+ for (i = 0; group[i]; i++)
+ x = MIN(x, group[i]->x), w += group[i]->w;
+@@ -1743,7 +1739,6 @@
+ group = frame_siblings(f, BOTTOM);
+ if (frame_siblings_growable(group, BOTTOM, size))
+ {
+- changes = 1;
+ y = f->y + f->h; h = size; x = f->x; w = 0;
+ for (i = 0; group[i]; i++)
+ x = MIN(x, group[i]->x), w += group[i]->w;
+@@ -2205,11 +2200,9 @@
+ char* com_frame_split(char *cmd, regmatch_t *subs)
+ {
+ group *g = heads->groups; frame *f = g->frames;
+- int sw = heads->screen->width - g->l - g->r,
+- sh = heads->screen->height - g->t - g->b;
+ char *mode = regsubstr(cmd, subs, 1);
+- ucell fs = f->h, ss = sh; ubyte dir = VERTICAL;
+- if (*mode == 'h') { fs = f->w; ss = sw; dir = HORIZONTAL; }
++ ucell fs = f->h; ubyte dir = VERTICAL;
++ if (*mode == 'h') { fs = f->w; dir = HORIZONTAL; }
+ dcell size = parse_size(cmd, subs, 2, fs);
+ frame_split(dir, size / fs);
+ free(mode);
+@@ -2630,7 +2623,7 @@
+ }
+ char* com_command(char *cmd, regmatch_t *subs)
+ {
+- int i; alias *a; autostr s; str_create(&s);
++ int i; alias *a = NULL; autostr s; str_create(&s);
+ str_print(&s, strlen(command_hints)+NOTE, "%s \n", command_hints);
+ FOR_STACK (a, aliases, alias*, i) str_print(&s, NOTE, "%s \n", a->name);
+ menu_wrapper(s.pad, settings[ms_run_musca_command].s);
+@@ -2747,7 +2740,7 @@
+ char* show_aliases()
+ {
+ autostr s; str_create(&s);
+- alias *a; int i;
++ alias *a = NULL; int i;
+ FOR_STACK (a, aliases, alias*, i)
+ str_print(&s, strlen(a->name)+strlen(a->command)+10, "alias %s %s\n",
+ a->name, a->command);
+@@ -2849,7 +2842,7 @@
+ }
+ char* com_place(char *cmd, regmatch_t *subs)
+ {
+- placement *p; int i;
++ placement *p = NULL; int i;
+ char *class = regsubstr(cmd, subs, 1);
+ ubyte flag = parse_flag(cmd, subs, 2, 0);
+ char *group = regsubstr(cmd, subs, 3);
+@@ -3441,7 +3434,7 @@
+ autostr s; str_create(&s);
+ for (;;)
+ {
+- char c = getchar();
++ int c = getchar();
+ if (c == EOF) break;
+ str_push(&s, c);
+ }
+@@ -3530,7 +3523,7 @@
+ }
+ void grab_stuff()
+ {
+- int i, j, k; head *h; binding *b; ucell *m;
++ int i, j, k; head *h; binding *b; ucell *m = NULL;
+ refresh_bindings();
+ ungrab_stuff();
+ ucell modifiers[] = { 0, LockMask, NumlockMask, LockMask|NumlockMask };
+@@ -3550,7 +3543,7 @@
+ {
+ int i;
+ command_hash = hash_create();
+- command *c; autostr str; str_create(&str);
++ command *c = NULL; autostr str; str_create(&str);
+ FOR_ARRAY (c, commands, command, i)
+ {
+ char *keys = c->keys;
+@@ -3566,7 +3559,7 @@
+ strtrim(command_hints);
+ // compile setting regex
+ setting_hash = hash_create();
+- setting *s;
++ setting *s = NULL;
+ FOR_ARRAY (s, settings, setting, i)
+ hash_set(setting_hash, s->name, s);
+ // compile modmask regex
+@@ -3597,7 +3590,7 @@
+ }
+ void setup_bindings()
+ {
+- int i; keymap *k;
++ int i; keymap *k = NULL;
+ // prepare key bindings
+ bindings = stack_create();
+ FOR_ARRAY (k, keymaps, keymap, i)
+--- a/tools.c
++++ b/tools.c
+@@ -227,7 +227,7 @@
+ ucell ptr = 0;
+ for (;;)
+ {
+- byte c = fgetc(src);
++ int c = fgetc(src);
+ if (c == EOF)
+ break;
+
diff --git a/x11-wm/musca/files/musca.xsession b/x11-wm/musca/files/musca.xsession
new file mode 100644
index 000000000000..41e90a7ceb3e
--- /dev/null
+++ b/x11-wm/musca/files/musca.xsession
@@ -0,0 +1,2 @@
+#!/bin/sh
+musca
diff --git a/x11-wm/musca/metadata.xml b/x11-wm/musca/metadata.xml
new file mode 100644
index 000000000000..70dc935b8077
--- /dev/null
+++ b/x11-wm/musca/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>jer@gentoo.org</email>
+ <name>Jeroen Roovers</name>
+ </maintainer>
+ <use>
+ <flag name="apis">Optionally install the experimental `apis' window manager</flag>
+ <flag name="xlisten">Optionally install the xlisten utility</flag>
+ </use>
+ <upstream>
+ <remote-id type="launchpad">musca</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/x11-wm/musca/musca-0.9.24_p20100226-r3.ebuild b/x11-wm/musca/musca-0.9.24_p20100226-r3.ebuild
new file mode 100644
index 000000000000..0db45a22b6c2
--- /dev/null
+++ b/x11-wm/musca/musca-0.9.24_p20100226-r3.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils savedconfig toolchain-funcs
+
+DESCRIPTION="A simple dynamic window manager for X, with features nicked from
+ratpoison and dwm"
+HOMEPAGE="https://launchpad.net/musca"
+SRC_URI="mirror://gentoo/${P}.tgz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="apis xlisten"
+
+COMMON="x11-libs/libX11"
+DEPEND="${COMMON}
+ sys-apps/sed"
+RDEPEND="
+ ${COMMON}
+ >=x11-misc/dmenu-4.4
+ apis? ( x11-misc/xbindkeys )
+"
+
+src_prepare() {
+ restore_config config.h
+
+ sed -i config.h \
+ -e 's:"sort | dmenu -i -b":"-i -b":g' \
+ -e 's:sed.*exec.*-i::g' \
+ || die
+
+ epatch \
+ "${FILESDIR}"/${PN}-0.9.24-make.patch \
+ "${FILESDIR}"/${PN}-0.9.24_p20100226-dmenu-4.4.patch \
+ "${FILESDIR}"/${PN}-0.9.24_p20100226-null.patch
+
+ local i
+ for i in apis xlisten; do
+ if ! use ${i}; then
+ sed -e "s|${i}||g" -i Makefile || die
+ fi
+ done
+
+ tc-export CC
+}
+
+src_install() {
+ dobin musca
+
+ local i
+ for i in xlisten apis; do
+ if use ${i}; then
+ dobin ${i}
+ fi
+ done
+ doman musca.1
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}.xsession musca
+
+ save_config config.h
+}
diff --git a/x11-wm/musca/musca-0.9.24_p20100226-r4.ebuild b/x11-wm/musca/musca-0.9.24_p20100226-r4.ebuild
new file mode 100644
index 000000000000..fbe96e763ac8
--- /dev/null
+++ b/x11-wm/musca/musca-0.9.24_p20100226-r4.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils savedconfig toolchain-funcs
+
+DESCRIPTION="A simple dynamic window manager for X, with features nicked from
+ratpoison and dwm"
+HOMEPAGE="https://launchpad.net/musca"
+SRC_URI="mirror://gentoo/${P}.tgz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="apis xlisten"
+
+COMMON="x11-libs/libX11"
+DEPEND="${COMMON}
+ sys-apps/sed"
+RDEPEND="
+ ${COMMON}
+ >=x11-misc/dmenu-4.4
+ apis? ( x11-misc/xbindkeys )
+"
+
+src_prepare() {
+ restore_config config.h
+
+ sed -i config.h \
+ -e 's:"sort | dmenu -i -b":"-i -b":g' \
+ -e 's:sed.*exec.*-i::g' \
+ || die
+
+ epatch \
+ "${FILESDIR}"/${PN}-0.9.24-make.patch \
+ "${FILESDIR}"/${PN}-0.9.24_p20100226-dmenu-4.4.patch \
+ "${FILESDIR}"/${PN}-0.9.24_p20100226-null.patch \
+ "${FILESDIR}"/${PN}-0.9.24_p20100226-fix-cycle.patch \
+ "${FILESDIR}"/${PN}-0.9.24_p20100226-fix-pad.patch
+
+ local i
+ for i in apis xlisten; do
+ if ! use ${i}; then
+ sed -e "s|${i}||g" -i Makefile || die
+ fi
+ done
+
+ tc-export CC
+}
+
+src_install() {
+ dobin musca
+
+ local i
+ for i in xlisten apis; do
+ if use ${i}; then
+ dobin ${i}
+ fi
+ done
+ doman musca.1
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}.xsession musca
+
+ save_config config.h
+}
diff --git a/x11-wm/mutter/Manifest b/x11-wm/mutter/Manifest
new file mode 100644
index 000000000000..3633659d5a24
--- /dev/null
+++ b/x11-wm/mutter/Manifest
@@ -0,0 +1,3 @@
+DIST mutter-3.14.4.tar.xz 1608836 SHA256 b4fbcc0664484d6215fc1f2101e9b636303de63544b786f2f87ebf2f6a616a8b SHA512 5b6e2d969e9a328e23bedb9fd0409da1af0d2ae8ded6a940992d4cff18a8cbfe2aa6582a56a2c8bd549a560a84d8cbffe953f151bcadf235315b8ec8bc7d1267 WHIRLPOOL 45c0329832999f14a5eaa77df3a6c7bbc72556b779fc55b3db9505594efec40252996bf8d96083da47fdb67b6bf5a9402f526d8bbb1e5436e5de16a8520e4acf
+DIST mutter-3.16.2.tar.xz 1549760 SHA256 4a2b752f0b3aa59f50563190222623324f5154acbb6bf174213f5849e77d0763 SHA512 f2cd350f8dbd03bc8e58f6c3f1b48cd51b38ae56e020d4e02100ef02f003d797a20095acf6a8874563fde42cfde49c4a28c418af151ee49f24ed391d5ae3caba WHIRLPOOL a88badf1f59c8c6ba8dcde4af207a2e66e66abbd6fd6c436289591bbb6eb3b017f50a7122282b69fd7d55127029e7623b7cbca3467d2d25d95c8ff6077dc371b
+DIST mutter-3.16.3.tar.xz 1550004 SHA256 ee0098487d1bfb8f28e3927fbb9df227d846555142d352f8693f56a08441c755 SHA512 31b6319c605d2576bf179e01534fe886a997677c63f19fa5d4a2d71e616a02de89d3edb069a444fb84c6fdf5a471afa2bda1d835c07e5d6dce712b2485e5937d WHIRLPOOL 23cc5161edb108137c9c983551b57659fc02c179bc7e08abebd5b26b98dcc1a17e00579a6b1e9f6fc544a92a877282fa1202a6390a14ef92ca6374dae1750112
diff --git a/x11-wm/mutter/files/mutter-3.14.2-automagic.patch b/x11-wm/mutter/files/mutter-3.14.2-automagic.patch
new file mode 100644
index 000000000000..3956004535a6
--- /dev/null
+++ b/x11-wm/mutter/files/mutter-3.14.2-automagic.patch
@@ -0,0 +1,90 @@
+From d723a752982e12b7a7fb7998c3e28efd9082abd9 Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Mon, 8 Dec 2014 22:00:32 +0100
+Subject: [PATCH] Make wayland support optional
+
+---
+ configure.ac | 58 +++++++++++++++++++++++++++++++++++++++++++---------------
+ 1 file changed, 43 insertions(+), 15 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 0870afa..251f909 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -200,23 +200,49 @@ AC_SUBST(XWAYLAND_PATH)
+
+ PKG_CHECK_MODULES(MUTTER, $MUTTER_PC_MODULES)
+
+-PKG_CHECK_MODULES(MUTTER_NATIVE_BACKEND, [clutter-egl-1.0 libdrm libsystemd libinput gbm >= 10.3], [have_native_backend=yes], [have_native_backend=no])
+-if test $have_native_backend = yes; then
+- AC_DEFINE([HAVE_NATIVE_BACKEND],[1],[Define if you want to enable the native (KMS) backend based on systemd])
+-fi
+-AM_CONDITIONAL([HAVE_NATIVE_BACKEND],[test $have_native_backend = yes])
+-
+-PKG_CHECK_MODULES(MUTTER_WAYLAND, [clutter-wayland-1.0 clutter-wayland-compositor-1.0 wayland-server >= 1.5.90], [have_wayland=yes], [have_wayland=no])
+-if test $have_wayland = yes; then
+- AC_PATH_PROG([WAYLAND_SCANNER],[wayland-scanner],[no])
+- AS_IF([test $WAYLAND_SCANNER = "no"],
+- AC_MSG_ERROR([Could not find wayland-scanner in your PATH, required for parsing wayland extension protocols]))
+- AC_SUBST([WAYLAND_SCANNER])
+-
+- AC_DEFINE([HAVE_WAYLAND],[1],[Define if you want to enable Wayland support])
+-fi
++have_wayland=no
++AC_ARG_ENABLE(
++ [wayland],
++ AS_HELP_STRING([--disable-wayland], [disable mutter on wayland support]),
++ [],
++ enable_wayland=yes
++)
++AS_IF([test "$enable_wayland" != "no"],
++ [
++ PKG_CHECK_MODULES([MUTTER_WAYLAND],
++ [clutter-wayland-1.0 clutter-wayland-compositor-1.0 wayland-server >= 1.5.90],
++ [
++ have_wayland=yes
++ AC_PATH_PROG([WAYLAND_SCANNER],[wayland-scanner],[no])
++ AS_IF([test $WAYLAND_SCANNER = "no"],
++ [AC_MSG_ERROR([Could not find wayland-scanner in your PATH, required for parsing wayland extension protocols])])
++ AC_SUBST([WAYLAND_SCANNER])
++ AC_DEFINE([HAVE_WAYLAND],[1],[Define if you want to enable Wayland support])
++ ],
++ [have_wayland=no])
++])
+ AM_CONDITIONAL([HAVE_WAYLAND],[test $have_wayland = yes])
+
++have_native_backend=no
++AC_ARG_ENABLE(
++ [native-backend],
++ AS_HELP_STRING([--disable-native-backend], [disable mutter native (KMS) backend]),
++ [],
++ enable_native_backend=yes
++)
++AS_IF([test "$enable_native_backend" != "no"],
++ [
++ PKG_CHECK_MODULES([MUTTER_NATIVE_BACKEND],
++ [clutter-egl-1.0 libdrm libsystemd libinput gudev-1.0 gbm >= 10.3],
++ [
++ have_native_backend=yes
++ AC_DEFINE([HAVE_NATIVE_BACKEND],[1],
++ [Define if you want to enable the native (KMS) backend based on systemd])
++ ],
++ [have_native_backend=no])
++])
++AM_CONDITIONAL([HAVE_NATIVE_BACKEND],[test $have_native_backend = yes])
++
+ PKG_CHECK_EXISTS([xi >= 1.6.99.1],
+ AC_DEFINE([HAVE_XI23],[1],[Define if you have support for XInput 2.3 or greater]))
+
+@@ -416,6 +442,8 @@ mutter-$VERSION
+ libcanberra: ${have_libcanberra}
+ Introspection: ${found_introspection}
+ Session management: ${found_sm}
++ Wayland: ${have_wayland}
++ Native (KMS) backend: ${have_native_backend}
+ "
+
+
+--
+2.2.0
+
diff --git a/x11-wm/mutter/files/mutter-3.16.2-size-unredirected.patch b/x11-wm/mutter/files/mutter-3.16.2-size-unredirected.patch
new file mode 100644
index 000000000000..0999ebd582a0
--- /dev/null
+++ b/x11-wm/mutter/files/mutter-3.16.2-size-unredirected.patch
@@ -0,0 +1,151 @@
+From 351f444f9d16a90636feb217b15f0f376bf96d85 Mon Sep 17 00:00:00 2001
+From: "Jasper St. Pierre" <jstpierre@mecheye.net>
+Date: Tue, 23 Jun 2015 16:23:45 -0700
+Subject: surface-actor-x11: Make sure to set a size when unredirected
+
+When we're unredirected, we don't have a pixmap, and thus our allocation
+becomes 0x0. So when events come in, they pass right through our actor,
+going to the one underneath in the stack.
+
+Fix this by having a fallback size on the shaped texture actor when
+we're unredirected, causing it to always have a valid allocation.
+
+This fixes clicking on stuff in sloppy / mouse mode focus.
+
+diff --git a/src/compositor/meta-shaped-texture-private.h b/src/compositor/meta-shaped-texture-private.h
+index 4ee8027..21c6335 100644
+--- a/src/compositor/meta-shaped-texture-private.h
++++ b/src/compositor/meta-shaped-texture-private.h
+@@ -32,6 +32,9 @@
+ ClutterActor *meta_shaped_texture_new (void);
+ void meta_shaped_texture_set_texture (MetaShapedTexture *stex,
+ CoglTexture *texture);
++void meta_shaped_texture_set_fallback_size (MetaShapedTexture *stex,
++ guint fallback_width,
++ guint fallback_height);
+ gboolean meta_shaped_texture_is_obscured (MetaShapedTexture *self);
+
+ #endif
+diff --git a/src/compositor/meta-shaped-texture.c b/src/compositor/meta-shaped-texture.c
+index 163c5e6..8701d1b 100644
+--- a/src/compositor/meta-shaped-texture.c
++++ b/src/compositor/meta-shaped-texture.c
+@@ -86,6 +86,7 @@ struct _MetaShapedTexturePrivate
+ cairo_region_t *unobscured_region;
+
+ guint tex_width, tex_height;
++ guint fallback_width, fallback_height;
+
+ guint create_mipmaps : 1;
+ };
+@@ -136,7 +137,20 @@ set_unobscured_region (MetaShapedTexture *self,
+ g_clear_pointer (&priv->unobscured_region, (GDestroyNotify) cairo_region_destroy);
+ if (unobscured_region)
+ {
+- cairo_rectangle_int_t bounds = { 0, 0, priv->tex_width, priv->tex_height };
++ guint width, height;
++
++ if (priv->texture)
++ {
++ width = priv->tex_width;
++ height = priv->tex_height;
++ }
++ else
++ {
++ width = priv->fallback_width;
++ height = priv->fallback_height;
++ }
++
++ cairo_rectangle_int_t bounds = { 0, 0, width, height };
+ priv->unobscured_region = cairo_region_copy (unobscured_region);
+ cairo_region_intersect_rectangle (priv->unobscured_region, &bounds);
+ }
+@@ -499,16 +513,21 @@ meta_shaped_texture_get_preferred_width (ClutterActor *self,
+ gfloat *natural_width_p)
+ {
+ MetaShapedTexturePrivate *priv;
++ guint width;
+
+ g_return_if_fail (META_IS_SHAPED_TEXTURE (self));
+
+ priv = META_SHAPED_TEXTURE (self)->priv;
+
+- if (min_width_p)
+- *min_width_p = priv->tex_width;
++ if (priv->texture)
++ width = priv->tex_width;
++ else
++ width = priv->fallback_width;
+
++ if (min_width_p)
++ *min_width_p = width;
+ if (natural_width_p)
+- *natural_width_p = priv->tex_width;
++ *natural_width_p = width;
+ }
+
+ static void
+@@ -518,16 +537,21 @@ meta_shaped_texture_get_preferred_height (ClutterActor *self,
+ gfloat *natural_height_p)
+ {
+ MetaShapedTexturePrivate *priv;
++ guint height;
+
+ g_return_if_fail (META_IS_SHAPED_TEXTURE (self));
+
+ priv = META_SHAPED_TEXTURE (self)->priv;
+
+- if (min_height_p)
+- *min_height_p = priv->tex_height;
++ if (priv->texture)
++ height = priv->tex_height;
++ else
++ height = priv->fallback_height;
+
++ if (min_height_p)
++ *min_height_p = height;
+ if (natural_height_p)
+- *natural_height_p = priv->tex_height;
++ *natural_height_p = height;
+ }
+
+ static cairo_region_t *
+@@ -860,6 +884,17 @@ meta_shaped_texture_get_image (MetaShapedTexture *stex,
+ return surface;
+ }
+
++void
++meta_shaped_texture_set_fallback_size (MetaShapedTexture *self,
++ guint fallback_width,
++ guint fallback_height)
++{
++ MetaShapedTexturePrivate *priv = self->priv;
++
++ priv->fallback_width = fallback_width;
++ priv->fallback_height = fallback_height;
++}
++
+ static void
+ meta_shaped_texture_cull_out (MetaCullable *cullable,
+ cairo_region_t *unobscured_region,
+diff --git a/src/compositor/meta-surface-actor-x11.c b/src/compositor/meta-surface-actor-x11.c
+index 4aa7ecd..b50b8f2 100644
+--- a/src/compositor/meta-surface-actor-x11.c
++++ b/src/compositor/meta-surface-actor-x11.c
+@@ -416,6 +416,7 @@ meta_surface_actor_x11_set_size (MetaSurfaceActorX11 *self,
+ int width, int height)
+ {
+ MetaSurfaceActorX11Private *priv = meta_surface_actor_x11_get_instance_private (self);
++ MetaShapedTexture *stex = meta_surface_actor_get_texture (META_SURFACE_ACTOR (self));
+
+ if (priv->last_width == width &&
+ priv->last_height == height)
+@@ -424,4 +425,5 @@ meta_surface_actor_x11_set_size (MetaSurfaceActorX11 *self,
+ priv->size_changed = TRUE;
+ priv->last_width = width;
+ priv->last_height = height;
++ meta_shaped_texture_set_fallback_size (stex, width, height);
+ }
+--
+cgit v0.10.2
+
diff --git a/x11-wm/mutter/files/mutter-3.2.1-ignore-shadow-and-padding.patch b/x11-wm/mutter/files/mutter-3.2.1-ignore-shadow-and-padding.patch
new file mode 100644
index 000000000000..bf4649e75ed8
--- /dev/null
+++ b/x11-wm/mutter/files/mutter-3.2.1-ignore-shadow-and-padding.patch
@@ -0,0 +1,91 @@
+Patch author: Timo Kluck <tkluck@infty.nl> Wed, 21 Sep 2011 17:51:28 +0200
+
+Patch to silently ignore padding and shadow tags in Ubuntu metacity themes.
+
+https://bugs.launchpad.net/bugs/800315
+https://bugs.gentoo.org/show_bug.cgi?id=396673
+
+diff --git a/src/ui/theme-parser.c b/src/ui/theme-parser.c
+index 9063541..63a881f 100644
+--- a/src/ui/theme-parser.c
++++ b/src/ui/theme-parser.c
+@@ -90,7 +90,9 @@ typedef enum
+ STATE_WINDOW,
+ /* things we don't use any more but we can still parse: */
+ STATE_MENU_ICON,
+- STATE_FALLBACK
++ STATE_FALLBACK,
++ /* an ubuntu specific ignore-this-element state */
++ UBUNTU_STATE_IGNORE
+ } ParseState;
+
+ typedef struct
+@@ -1306,7 +1308,19 @@ parse_toplevel_element (GMarkupParseContext *context,
+ */
+ push_state (info, STATE_FALLBACK);
+ }
+- else
++ else if (ELEMENT_IS ("shadow"))
++ {
++ /* ubuntu specific, workaround for light-themes: silently ignore shadow tag.
++ */
++ push_state (info, UBUNTU_STATE_IGNORE);
++ }
++ else if (ELEMENT_IS ("padding"))
++ {
++ /* ubuntu specific, workaround for light-themes: silently ignore padding tag.
++ */
++ push_state (info, UBUNTU_STATE_IGNORE);
++ }
++ else
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+@@ -3027,6 +3041,18 @@ parse_style_element (GMarkupParseContext *context,
+
+ push_state (info, STATE_BUTTON);
+ }
++ else if (ELEMENT_IS ("shadow"))
++ {
++ /* ubuntu specific, workaround for light-themes: silently ignore shadow tag.
++ */
++ push_state (info, UBUNTU_STATE_IGNORE);
++ }
++ else if (ELEMENT_IS ("padding"))
++ {
++ /* ubuntu specific, workaround for light-themes: silently ignore padding tag.
++ */
++ push_state (info, UBUNTU_STATE_IGNORE);
++ }
+ else
+ {
+ set_error (error, context,
+@@ -3671,6 +3697,8 @@ start_element_handler (GMarkupParseContext *context,
+ _("Element <%s> is not allowed inside a <%s> element"),
+ element_name, "fallback");
+ break;
++ case UBUNTU_STATE_IGNORE:
++ break;
+ }
+ }
+
+@@ -3960,6 +3988,9 @@ end_element_handler (GMarkupParseContext *context,
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_THEME);
+ break;
++ case UBUNTU_STATE_IGNORE:
++ pop_state (info);
++ break;
+ }
+
+ pop_required_version (info);
+@@ -4165,6 +4196,9 @@ text_handler (GMarkupParseContext *context,
+ case STATE_FALLBACK:
+ NO_TEXT ("fallback");
+ break;
++ case UBUNTU_STATE_IGNORE:
++ NO_TEXT ("ignored_element");
++ break;
+ }
+ }
+
diff --git a/x11-wm/mutter/metadata.xml b/x11-wm/mutter/metadata.xml
new file mode 100644
index 000000000000..31e8de5153d5
--- /dev/null
+++ b/x11-wm/mutter/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>gnome</herd>
+ <use>
+ <flag name="kms">Enable KMS support.</flag>
+ </use>
+</pkgmetadata>
diff --git a/x11-wm/mutter/mutter-3.14.4.ebuild b/x11-wm/mutter/mutter-3.14.4.ebuild
new file mode 100644
index 000000000000..7bd70e662c72
--- /dev/null
+++ b/x11-wm/mutter/mutter-3.14.4.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="yes"
+
+inherit autotools eutils gnome2
+
+DESCRIPTION="GNOME 3 compositing window manager based on Clutter"
+HOMEPAGE="http://git.gnome.org/browse/mutter/"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="+introspection +kms test wayland"
+KEYWORDS="~alpha amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc x86"
+
+# libXi-1.7.4 or newer needed per:
+# https://bugzilla.gnome.org/show_bug.cgi?id=738944
+COMMON_DEPEND="
+ >=x11-libs/pango-1.2[X,introspection?]
+ >=x11-libs/cairo-1.10[X]
+ >=x11-libs/gtk+-3.9.11:3[X,introspection?]
+ >=dev-libs/glib-2.36.0:2[dbus]
+ >=media-libs/clutter-1.19.5:1.0[introspection?]
+ >=media-libs/cogl-1.17.1:1.0=[introspection?]
+ >=media-libs/libcanberra-0.26[gtk3]
+ >=x11-libs/startup-notification-0.7
+ >=x11-libs/libXcomposite-0.2
+ >=gnome-base/gsettings-desktop-schemas-3.7.3[introspection?]
+ gnome-base/gnome-desktop:3=
+ >sys-power/upower-0.99:=
+
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ >=x11-libs/libXcomposite-0.2
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ >=x11-libs/libXi-1.7.4
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libxcb
+ x11-libs/libxkbfile
+ >=x11-libs/libxkbcommon-0.4.3[X]
+ x11-misc/xkeyboard-config
+
+ gnome-extra/zenity
+
+ introspection? ( >=dev-libs/gobject-introspection-1.42:= )
+ kms? (
+ dev-libs/libinput
+ >=media-libs/clutter-1.20[egl]
+ media-libs/cogl:1.0=[kms]
+ >=media-libs/mesa-10.3[gbm]
+ sys-apps/systemd
+ virtual/libgudev
+ x11-libs/libdrm:= )
+ wayland? (
+ >=dev-libs/wayland-1.5.90
+ >=media-libs/clutter-1.20[wayland]
+ x11-base/xorg-server[wayland] )
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-util/gtk-doc-am-1.15
+ >=dev-util/intltool-0.41
+ sys-devel/gettext
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xineramaproto
+ x11-proto/xproto
+ test? ( app-text/docbook-xml-dtd:4.5 )
+"
+RDEPEND="${COMMON_DEPEND}
+ !x11-misc/expocity
+"
+
+src_prepare() {
+ # Compat with Ubuntu metacity themes (e.g. x11-themes/light-themes)
+ epatch "${FILESDIR}"/${PN}-3.2.1-ignore-shadow-and-padding.patch
+
+ # Automagic fixes, upstream bug #746929
+ epatch "${FILESDIR}"/${PN}-3.14.2-automagic.patch
+
+ eautoreconf
+ gnome2_src_prepare
+}
+
+src_configure() {
+ gnome2_src_configure \
+ --disable-static \
+ --enable-sm \
+ --enable-startup-notification \
+ --enable-verbose-mode \
+ --with-libcanberra \
+ $(use_enable introspection) \
+ $(use_enable kms native-backend) \
+ $(use_enable wayland)
+}
diff --git a/x11-wm/mutter/mutter-3.16.2-r1.ebuild b/x11-wm/mutter/mutter-3.16.2-r1.ebuild
new file mode 100644
index 000000000000..cde05b3909a5
--- /dev/null
+++ b/x11-wm/mutter/mutter-3.16.2-r1.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="yes"
+
+inherit eutils gnome2
+
+DESCRIPTION="GNOME 3 compositing window manager based on Clutter"
+HOMEPAGE="http://git.gnome.org/browse/mutter/"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="+introspection +kms test wayland"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+
+# libXi-1.7.4 or newer needed per:
+# https://bugzilla.gnome.org/show_bug.cgi?id=738944
+COMMON_DEPEND="
+ >=x11-libs/pango-1.2[X,introspection?]
+ >=x11-libs/cairo-1.10[X]
+ >=x11-libs/gtk+-3.9.11:3[X,introspection?]
+ >=dev-libs/glib-2.36.0:2[dbus]
+ >=media-libs/clutter-1.21.3:1.0[introspection?]
+ >=media-libs/cogl-1.17.1:1.0=[introspection?]
+ >=media-libs/libcanberra-0.26[gtk3]
+ >=x11-libs/startup-notification-0.7
+ >=x11-libs/libXcomposite-0.2
+ >=gnome-base/gsettings-desktop-schemas-3.15.92[introspection?]
+ gnome-base/gnome-desktop:3=
+ >sys-power/upower-0.99:=
+
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ >=x11-libs/libXcomposite-0.2
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ >=x11-libs/libXi-1.7.4
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libxcb
+ x11-libs/libxkbfile
+ >=x11-libs/libxkbcommon-0.4.3[X]
+ x11-misc/xkeyboard-config
+
+ gnome-extra/zenity
+
+ introspection? ( >=dev-libs/gobject-introspection-1.42:= )
+ kms? (
+ dev-libs/libinput
+ >=media-libs/clutter-1.20[egl]
+ media-libs/cogl:1.0=[kms]
+ >=media-libs/mesa-10.3[gbm]
+ sys-apps/systemd
+ virtual/libgudev
+ x11-libs/libdrm:= )
+ wayland? (
+ >=dev-libs/wayland-1.5.90
+ >=media-libs/clutter-1.20[wayland]
+ x11-base/xorg-server[wayland] )
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-util/gtk-doc-am-1.15
+ >=dev-util/intltool-0.41
+ sys-devel/gettext
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xineramaproto
+ x11-proto/xproto
+ test? ( app-text/docbook-xml-dtd:4.5 )
+"
+RDEPEND="${COMMON_DEPEND}
+ !x11-misc/expocity
+"
+
+src_prepare() {
+ # surface-actor-x11: Make sure to set a size when unredirected (from 3.16 branch)
+ epatch "${FILESDIR}"/${P}-size-unredirected.patch
+ gnome2_src_prepare
+}
+
+src_configure() {
+ gnome2_src_configure \
+ --disable-static \
+ --enable-sm \
+ --enable-startup-notification \
+ --enable-verbose-mode \
+ --with-libcanberra \
+ $(use_enable introspection) \
+ $(use_enable kms native-backend) \
+ $(use_enable wayland)
+}
diff --git a/x11-wm/mutter/mutter-3.16.2.ebuild b/x11-wm/mutter/mutter-3.16.2.ebuild
new file mode 100644
index 000000000000..e99ffbd3f79a
--- /dev/null
+++ b/x11-wm/mutter/mutter-3.16.2.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="yes"
+
+inherit eutils gnome2
+
+DESCRIPTION="GNOME 3 compositing window manager based on Clutter"
+HOMEPAGE="http://git.gnome.org/browse/mutter/"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="+introspection +kms test wayland"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+
+# libXi-1.7.4 or newer needed per:
+# https://bugzilla.gnome.org/show_bug.cgi?id=738944
+COMMON_DEPEND="
+ >=x11-libs/pango-1.2[X,introspection?]
+ >=x11-libs/cairo-1.10[X]
+ >=x11-libs/gtk+-3.9.11:3[X,introspection?]
+ >=dev-libs/glib-2.36.0:2[dbus]
+ >=media-libs/clutter-1.21.3:1.0[introspection?]
+ >=media-libs/cogl-1.17.1:1.0=[introspection?]
+ >=media-libs/libcanberra-0.26[gtk3]
+ >=x11-libs/startup-notification-0.7
+ >=x11-libs/libXcomposite-0.2
+ >=gnome-base/gsettings-desktop-schemas-3.15.92[introspection?]
+ gnome-base/gnome-desktop:3=
+ >sys-power/upower-0.99:=
+
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ >=x11-libs/libXcomposite-0.2
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ >=x11-libs/libXi-1.7.4
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libxcb
+ x11-libs/libxkbfile
+ >=x11-libs/libxkbcommon-0.4.3[X]
+ x11-misc/xkeyboard-config
+
+ gnome-extra/zenity
+
+ introspection? ( >=dev-libs/gobject-introspection-1.42:= )
+ kms? (
+ dev-libs/libinput
+ >=media-libs/clutter-1.20[egl]
+ media-libs/cogl:1.0=[kms]
+ >=media-libs/mesa-10.3[gbm]
+ sys-apps/systemd
+ virtual/libgudev
+ x11-libs/libdrm:= )
+ wayland? (
+ >=dev-libs/wayland-1.5.90
+ >=media-libs/clutter-1.20[wayland]
+ x11-base/xorg-server[wayland] )
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-util/gtk-doc-am-1.15
+ >=dev-util/intltool-0.41
+ sys-devel/gettext
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xineramaproto
+ x11-proto/xproto
+ test? ( app-text/docbook-xml-dtd:4.5 )
+"
+RDEPEND="${COMMON_DEPEND}
+ !x11-misc/expocity
+"
+
+src_configure() {
+ gnome2_src_configure \
+ --disable-static \
+ --enable-sm \
+ --enable-startup-notification \
+ --enable-verbose-mode \
+ --with-libcanberra \
+ $(use_enable introspection) \
+ $(use_enable kms native-backend) \
+ $(use_enable wayland)
+}
diff --git a/x11-wm/mutter/mutter-3.16.3.ebuild b/x11-wm/mutter/mutter-3.16.3.ebuild
new file mode 100644
index 000000000000..e99ffbd3f79a
--- /dev/null
+++ b/x11-wm/mutter/mutter-3.16.3.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="yes"
+
+inherit eutils gnome2
+
+DESCRIPTION="GNOME 3 compositing window manager based on Clutter"
+HOMEPAGE="http://git.gnome.org/browse/mutter/"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="+introspection +kms test wayland"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+
+# libXi-1.7.4 or newer needed per:
+# https://bugzilla.gnome.org/show_bug.cgi?id=738944
+COMMON_DEPEND="
+ >=x11-libs/pango-1.2[X,introspection?]
+ >=x11-libs/cairo-1.10[X]
+ >=x11-libs/gtk+-3.9.11:3[X,introspection?]
+ >=dev-libs/glib-2.36.0:2[dbus]
+ >=media-libs/clutter-1.21.3:1.0[introspection?]
+ >=media-libs/cogl-1.17.1:1.0=[introspection?]
+ >=media-libs/libcanberra-0.26[gtk3]
+ >=x11-libs/startup-notification-0.7
+ >=x11-libs/libXcomposite-0.2
+ >=gnome-base/gsettings-desktop-schemas-3.15.92[introspection?]
+ gnome-base/gnome-desktop:3=
+ >sys-power/upower-0.99:=
+
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ >=x11-libs/libXcomposite-0.2
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ >=x11-libs/libXi-1.7.4
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libxcb
+ x11-libs/libxkbfile
+ >=x11-libs/libxkbcommon-0.4.3[X]
+ x11-misc/xkeyboard-config
+
+ gnome-extra/zenity
+
+ introspection? ( >=dev-libs/gobject-introspection-1.42:= )
+ kms? (
+ dev-libs/libinput
+ >=media-libs/clutter-1.20[egl]
+ media-libs/cogl:1.0=[kms]
+ >=media-libs/mesa-10.3[gbm]
+ sys-apps/systemd
+ virtual/libgudev
+ x11-libs/libdrm:= )
+ wayland? (
+ >=dev-libs/wayland-1.5.90
+ >=media-libs/clutter-1.20[wayland]
+ x11-base/xorg-server[wayland] )
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-util/gtk-doc-am-1.15
+ >=dev-util/intltool-0.41
+ sys-devel/gettext
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xineramaproto
+ x11-proto/xproto
+ test? ( app-text/docbook-xml-dtd:4.5 )
+"
+RDEPEND="${COMMON_DEPEND}
+ !x11-misc/expocity
+"
+
+src_configure() {
+ gnome2_src_configure \
+ --disable-static \
+ --enable-sm \
+ --enable-startup-notification \
+ --enable-verbose-mode \
+ --with-libcanberra \
+ $(use_enable introspection) \
+ $(use_enable kms native-backend) \
+ $(use_enable wayland)
+}
diff --git a/x11-wm/notion/Manifest b/x11-wm/notion/Manifest
new file mode 100644
index 000000000000..de2c8c1e351d
--- /dev/null
+++ b/x11-wm/notion/Manifest
@@ -0,0 +1,2 @@
+DIST notion-3-2013030200-src.tar.bz2 625211 SHA256 565d85757cf5aac0193498339d245d3fd34dff09a1f2816735cae584a5b863e7 SHA512 266df9ca2f3613c7138a3bfe7bab1fadd27c1ad40078d134be827167b9407b900bc240780cb5375e6996777978bb8a3bc12fbfa45bb4d8d619ee93335c6039b2 WHIRLPOOL 23831d187dc23bffb83965015c0d052cb4a7378c6599dfac0d0fb845e624e7dd934be7a2a1e6bb8598330d9fbf621cc346986baeff3d96b16018774a116f7dd0
+DIST notion-3_p2015061300.tar.gz 797057 SHA256 3c9d9f35a9fb0d17c263b76fe28f7a1a4a05b7d6140545524cc1effd98c5c305 SHA512 254be12a8ece555d9f6253d99891bb51214379d0c04b6bf9595b7e5bf9493cb5d2fada37438f89621e7157f9e3647e446b5e173847498ee3608081f006b86679 WHIRLPOOL 15263dd3298e90f0f16119198b01e1466acba7cf431d2d6a56e71f53b35a2461be7155462b31d9da6c0a652e8fd33b7b9fbf6960a64f956e9853ad3030e8bcb8
diff --git a/x11-wm/notion/files/notion b/x11-wm/notion/files/notion
new file mode 100644
index 000000000000..65bf5648ad0b
--- /dev/null
+++ b/x11-wm/notion/files/notion
@@ -0,0 +1,2 @@
+#!/bin/sh
+/usr/bin/notion
diff --git a/x11-wm/notion/files/notion-3_p2015061300-pkg-config.patch b/x11-wm/notion/files/notion-3_p2015061300-pkg-config.patch
new file mode 100644
index 000000000000..fb718caa3158
--- /dev/null
+++ b/x11-wm/notion/files/notion-3_p2015061300-pkg-config.patch
@@ -0,0 +1,76 @@
+--- notion-3-2015061300/system-autodetect.mk
++++ notion-3-2015061300/system-autodetect.mk
+@@ -84,8 +84,8 @@
+ # SunOS/Solaris
+ #X11_PREFIX ?= /usr/openwin
+
+-X11_LIBS=-L$(X11_PREFIX)/lib -lX11 -lXext
+-X11_INCLUDES=-I$(X11_PREFIX)/include
++X11_LIBS=$(shell $(PKG_CONFIG) --libs x11 xext)
++X11_INCLUDES=$(shell $(PKG_CONFIG) --cflags-only-I x11 xext)
+
+ # XFree86 libraries up to 4.3.0 have a bug that can cause a segfault.
+ # The following setting should work around that situation.
+--- notion-3-2015061300/mod_xinerama/Makefile
++++ notion-3-2015061300/mod_xinerama/Makefile
+@@ -9,14 +9,14 @@
+
+ ######################################
+
+-INCLUDES += $(LIBTU_INCLUDES) $(LIBEXTL_INCLUDES) $(X11_INCLUDES) -I$(TOPDIR)
+-CFLAGS += $(XOPEN_SOURCE) $(C99_SOURCE)
++INCLUDES += $(LIBTU_INCLUDES) $(LIBEXTL_INCLUDES) $(X11_INCLUDES) -I$(TOPDIR) $(shell $(PKG_CONFIG) --cflags-only-I xinerama)
++CFLAGS += $(XOPEN_SOURCE) $(C99_SOURCE) $(shell $(PKG_CONFIG) --cflags-only-other xinerama)
+ DOCS=LICENSE README
+
+ SOURCES=mod_xinerama.c
+
+ MAKE_EXPORTS=mod_xinerama
+-LIBS = -L/usr/lib/x86_64-linux-gnu $(X11_LIBS) -lXinerama
++LIBS = $(X11_LIBS) $(shell $(PKG_CONFIG) --libs xinerama)
+ MODULE=mod_xinerama
+ MODULE_STUB=mod_xinerama.lua
+
+@@ -44,7 +44,7 @@
+
+ .PHONY: test
+ test: $(SOURCES)
+- lua test_xinerama.lua
++ $(LUA) test_xinerama.lua
+
+ ######################################
+
+@@ -57,4 +57,4 @@
+ ################ ls_xinerama utility ###############
+
+ ls_xinerama: ls_xinerama.c
+- $(CC) ls_xinerama.c -o ls_xinerama -Wl,--as-needed -lX11 -lXinerama
++ $(CC) $(CFLAGS) ls_xinerama.c -o ls_xinerama $(LDFLAGS) $(LIBS)
+--- notion-3-2015061300/mod_xrandr/Makefile
++++ notion-3-2015061300/mod_xrandr/Makefile
+@@ -9,13 +9,13 @@
+
+ ######################################
+
+-INCLUDES += $(LIBTU_INCLUDES) $(LIBEXTL_INCLUDES) $(X11_INCLUDES) -I$(TOPDIR)
+-CFLAGS += $(XOPEN_SOURCE) $(C99_SOURCE)
++INCLUDES += $(LIBTU_INCLUDES) $(LIBEXTL_INCLUDES) $(X11_INCLUDES) -I$(TOPDIR) $(shell pkg-config --cflags-only-I xrandr)
++CFLAGS += $(XOPEN_SOURCE) $(C99_SOURCE) $(shell $(PKG_CONFIG) --cflags-only-other xrandr)
+
+ SOURCES=mod_xrandr.c
+
+ MAKE_EXPORTS=mod_xrandr
+-LIBS = $(X11_LIBS) -lXrandr
++LIBS = $(X11_LIBS) $(shell $(PKG_CONFIG) --libs xrandr)
+ MODULE=mod_xrandr
+ MODULE_STUB=mod_xrandr.lua
+ ETC=cfg_xrandr.lua
+@@ -45,7 +45,7 @@
+
+ .PHONY: test
+ test: $(SOURCES)
+- for i in test_xrandr*.lua ; do echo 'Testing' $$i ; lua $$i ; done
++ for i in test_xrandr*.lua ; do echo 'Testing' $$i ; $(LUA) $$i ; done
+
+ ######################################
+
diff --git a/x11-wm/notion/files/notion.desktop b/x11-wm/notion/files/notion.desktop
new file mode 100644
index 000000000000..7c9de9a95fd3
--- /dev/null
+++ b/x11-wm/notion/files/notion.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Notion
+Comment=A tiling tabbed window manager designed with keyboard users in mind.
+Exec=notion
+TryExec=notion
+# no icon yet, only the top three are currently used
+Icon=
+Type=Application
diff --git a/x11-wm/notion/metadata.xml b/x11-wm/notion/metadata.xml
new file mode 100644
index 000000000000..e708492171df
--- /dev/null
+++ b/x11-wm/notion/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>moaxcp@gmail.com</email>
+ <name>John Mercier</name>
+ </maintainer>
+ <use>
+ <flag name="xrandr">Add support for xrandr</flag>
+ </use>
+</pkgmetadata>
diff --git a/x11-wm/notion/notion-3_p2013030200.ebuild b/x11-wm/notion/notion-3_p2013030200.ebuild
new file mode 100644
index 000000000000..335288e78075
--- /dev/null
+++ b/x11-wm/notion/notion-3_p2013030200.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib toolchain-funcs
+
+DESCRIPTION="Notion is a tiling, tabbed window manager for the X window system"
+HOMEPAGE="http://notion.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/files/${P/_p/-}-src.tar.bz2"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="nls xinerama +xrandr"
+
+RDEPEND=">=dev-lang/lua-5.1:0=
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXext
+ nls? ( sys-devel/gettext )
+ xinerama? ( x11-libs/libXinerama )
+ xrandr? ( x11-libs/libXrandr )"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+# needs luaposix,slingshot,... not in tree
+RESTRICT=test
+
+S=${WORKDIR}/${P/_p/-}
+
+src_prepare() {
+ sed -e "/^CFLAGS=/s:=:+=:" \
+ -e "/^CFLAGS/{s:-Os:: ; s:-g::}" \
+ -e "/^LDFLAGS=/{s:=:+=: ; s:-Wl,--as-needed::}" \
+ -e "/^CC=/s:=:?=:" \
+ -e "s:^\(PREFIX=\).*$:\1${ROOT}usr:" \
+ -e "s:^\(ETCDIR=\).*$:\1${ROOT}etc/notion:" \
+ -e "s:^\(LIBDIR=\).*:\1\$(PREFIX)/$(get_libdir):" \
+ -e "s:^\(DOCDIR=\).*:\1\$(PREFIX)/share/doc/${PF}:" \
+ -e "s:^\(LUA_DIR=\).*$:\1\$(PREFIX)/usr:" \
+ -e "s:^\(VARDIR=\).*$:\1${ROOT}var/cache/${PN}:" \
+ -e "s:^\(X11_PREFIX=\).*:\1\$(PREFIX)/usr:" \
+ -i system-autodetect.mk || die
+ sed -e 's/gcc/$(CC)/g' \
+ -i ioncore/Makefile || die
+ export STRIPPROG=true
+
+ tc-export CC
+}
+
+src_configure() {
+ use nls || export DEFINES=" -DCF_NO_LOCALE -DCF_NO_GETTEXT"
+
+ if ! use xinerama ; then
+ sed -e 's/mod_xinerama//g' -i modulelist.mk || die
+ fi
+
+ if ! use xrandr ; then
+ sed -e 's/mod_xrandr//g' -i modulelist.mk || die
+ fi
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" AR="$(tc-getAR)" \
+ RANLIB="$(tc-getRANLIB)"
+}
+
+src_install() {
+ default
+
+ exeinto /etc/X11/Sessions
+ doexe "${FILESDIR}"/notion
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/notion.desktop
+}
+
+pkg_postinst() {
+ elog "If you want notion to have an ability to view a file based on its"
+ elog "guessed MIME type you should emerge app-misc/run-mailcap."
+}
diff --git a/x11-wm/notion/notion-3_p2015061300-r1.ebuild b/x11-wm/notion/notion-3_p2015061300-r1.ebuild
new file mode 100644
index 000000000000..4c9e78a1dda5
--- /dev/null
+++ b/x11-wm/notion/notion-3_p2015061300-r1.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib toolchain-funcs readme.gentoo
+
+DESCRIPTION="Notion is a tiling, tabbed window manager for the X window system"
+HOMEPAGE="http://notion.sourceforge.net"
+SRC_URI="https://github.com/raboof/${PN}/archive/${PV/_p/-}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="nls xinerama +xrandr"
+
+RDEPEND=">=dev-lang/lua-5.1:0=
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXext
+ nls? ( sys-devel/gettext )
+ xinerama? ( x11-libs/libXinerama )
+ xrandr? ( x11-libs/libXrandr )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+# mod_xrandr references mod_xinerama
+REQUIRED_USE="xrandr? ( xinerama )"
+
+# needs luaposix,slingshot,... not in tree
+RESTRICT=test
+
+S=${WORKDIR}/${P/_p/-}
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-pkg-config.patch"
+
+ sed -e "/^CFLAGS/{s: =: +=: ; s:-Os:: ; s:-g::}" \
+ -e "/^LDFLAGS/{s: =: +=: ; s:-Wl,--as-needed::}" \
+ -i system-autodetect.mk || die
+ echo > build/lua-detect.mk
+}
+
+src_configure() {
+ { echo "CFLAGS += -D_DEFAULT_SOURCE"
+ echo "PREFIX=${ROOT}usr"
+ echo "DOCDIR=\$(PREFIX)/share/doc/${PF}"
+ echo "ETCDIR=${ROOT}etc/${PN}"
+ echo "LIBDIR=\$(PREFIX)/$(get_libdir)"
+ echo "VARDIR=${ROOT}var/cache/${PN}"
+ echo "X11_PREFIX=${ROOT}usr"
+ echo "STRIPPROG=true"
+ echo "CC=$(tc-getCC)"
+ echo "AR=$(tc-getAR)"
+ echo "RANLIB=$(tc-getRANLIB)"
+ echo "LUA_MANUAL=1"
+ echo "LUA=\$(BINDIR)/lua"
+ echo "LUAC=\$(BINDIR)/luac"
+ echo "LUA_LIBS=\$(shell pkg-config --libs lua)"
+ echo "LUA_INCLUDES=\$(shell pkg-config --cflags)"
+ use nls || echo "DEFINES+=-DCF_NO_LOCALE -DCF_NO_GETTEXT"
+ } > system-local.mk
+
+ if ! use xinerama ; then
+ sed -e 's/mod_xinerama//g' -i modulelist.mk || die
+ fi
+
+ if ! use xrandr ; then
+ sed -e 's/mod_xrandr//g' -i modulelist.mk || die
+ sed -e '/mod_xrandr/d' \
+ -i etc/cfg_defaults.lua || die
+ fi
+}
+
+src_install() {
+ default
+
+ exeinto /etc/X11/Sessions
+ doexe "${FILESDIR}"/notion
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/notion.desktop
+
+ readme.gentoo_src_install
+}
+
+DOC_CONTENTS="If you want notion to have an ability to view a file based on its
+guessed MIME type you should emerge app-misc/run-mailcap."
diff --git a/x11-wm/notion/notion-9999.ebuild b/x11-wm/notion/notion-9999.ebuild
new file mode 100644
index 000000000000..61c251284170
--- /dev/null
+++ b/x11-wm/notion/notion-9999.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils git-r3 multilib toolchain-funcs readme.gentoo
+
+DESCRIPTION="Notion is a tiling, tabbed window manager for the X window system"
+HOMEPAGE="http://notion.sourceforge.net"
+EGIT_REPO_URI="https://github.com/raboof/${PN}.git"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS=""
+IUSE="nls xinerama +xrandr"
+
+RDEPEND=">=dev-lang/lua-5.1:0=
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXext
+ nls? ( sys-devel/gettext )
+ xinerama? ( x11-libs/libXinerama )
+ xrandr? ( x11-libs/libXrandr )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+# mod_xrandr references mod_xinerama
+REQUIRED_USE="xrandr? ( xinerama )"
+
+# needs luaposix,slingshot,... not in tree
+RESTRICT=test
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-3_p2015061300-pkg-config.patch"
+
+ sed -e "/^CFLAGS/{s: =: +=: ; s:-Os:: ; s:-g::}" \
+ -e "/^LDFLAGS/{s: =: +=: ; s:-Wl,--as-needed::}" \
+ -i system-autodetect.mk || die
+ echo > build/lua-detect.mk
+}
+
+src_configure() {
+ { echo "CFLAGS += -D_DEFAULT_SOURCE"
+ echo "PREFIX=${ROOT}usr"
+ echo "DOCDIR=\$(PREFIX)/share/doc/${PF}"
+ echo "ETCDIR=${ROOT}etc/${PN}"
+ echo "LIBDIR=\$(PREFIX)/$(get_libdir)"
+ echo "VARDIR=${ROOT}var/cache/${PN}"
+ echo "X11_PREFIX=${ROOT}usr"
+ echo "STRIPPROG=true"
+ echo "CC=$(tc-getCC)"
+ echo "AR=$(tc-getAR)"
+ echo "RANLIB=$(tc-getRANLIB)"
+ echo "LUA_MANUAL=1"
+ echo "LUA=\$(BINDIR)/lua"
+ echo "LUAC=\$(BINDIR)/luac"
+ echo "LUA_LIBS=\$(shell pkg-config --libs lua)"
+ echo "LUA_INCLUDES=\$(shell pkg-config --cflags)"
+ use nls || echo "DEFINES+=-DCF_NO_LOCALE -DCF_NO_GETTEXT"
+ } > system-local.mk
+
+ if ! use xinerama ; then
+ sed -e 's/mod_xinerama//g' -i modulelist.mk || die
+ fi
+
+ if ! use xrandr ; then
+ sed -e 's/mod_xrandr//g' -i modulelist.mk || die
+ sed -e '/mod_xrandr/d' \
+ -i etc/cfg_defaults.lua || die
+ fi
+}
+
+src_install() {
+ default
+
+ exeinto /etc/X11/Sessions
+ doexe "${FILESDIR}"/notion
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/notion.desktop
+
+ readme.gentoo_src_install
+}
+
+DOC_CONTENTS="If you want notion to have an ability to view a file based on its
+guessed MIME type you should emerge app-misc/run-mailcap."
diff --git a/x11-wm/openbox/Manifest b/x11-wm/openbox/Manifest
new file mode 100644
index 000000000000..1b62fd73f926
--- /dev/null
+++ b/x11-wm/openbox/Manifest
@@ -0,0 +1,4 @@
+DIST openbox-3.5.2.tar.gz 972751 SHA256 128fb4ef11f83f6edb1685cfc04f44a16a5322082fc519f9d7cac84fc658af33 SHA512 89c58364bc482f2b098341e28b2bbab69a791430ff8924dc0dd6fe56aabadde916d42a4e7dfb47cab21afebd747698e106a19e852444d2ede05e72ef423df09d WHIRLPOOL 808109bc07c5c2a1f2444501c91f4d3f111290d034811d46f63f21001343f0a368a648d964e69a7264d4a5f447ce780ceba9d075e4d65d5b928075776a8274f2
+DIST openbox-3.6.1.tar.gz 962665 SHA256 8b4ac0760018c77c0044fab06a4f0c510ba87eae934d9983b10878483bde7ef7 SHA512 5e6f4a214005bea8b26bc8959fe5bb67356a387ddd317e014f43cb5b5bf263ec617a5973e2982eb76a08dc7d3ca5ec9e72e64c9b5efd751001a8999b420b1ad0 WHIRLPOOL 9fbfac65bc811f23f8e68af2f61d0271697ef0ebf3555de169d35afe91d0152a8379b717dc4f897c9c47c0332a4f2eb2d032f9459ab0d544cc3049c3917f3bd6
+DIST openbox-3.6.tar.gz 963207 SHA256 866c0ab8cb1cd15c7ae8022179cb6132a4c0f0476673bd3b834a1ef67a593ba8 SHA512 7f158a5236dcba5ec3c0e4fb5d1a5cabbd956d4125f19dfdb0594f5ded52545078d85ab645589ec3400a5306f63b43db5ee1ae26e3683141ee47f1b406d9788b WHIRLPOOL e6b4b0e73befe9a76ab4c4e388f7cea8b60874266c8ce8f2ce40b277a5b3744c99c10bde0bf3adc3650e10be46936352d9d758019288d9bbc24799f70de81ac8
+DIST surreal-gentoo.tar.gz 13410 SHA256 f478c58b2b6cd7a2a2ebe53fa261adb2d1fddf188f059d238b1b69ecc8701626 SHA512 dd43cb78e5e33345767edad22d0470765ac9eeae02bbad0acd8098bc096c15a166bf651493d12a5953bc043c9be92e9b160607eafb4723a6bcfc5d1d6fae235e WHIRLPOOL c9b406f4d822c8ce250bf8f30c9ad6bab75a0c1889a5b60061b83e44c06fd386f60c69ace176672d1a9658f4aa82fc82daaef205630c15c4711019cb48cca7ad
diff --git a/x11-wm/openbox/files/openbox-3.5.2-gnome-session.patch b/x11-wm/openbox/files/openbox-3.5.2-gnome-session.patch
new file mode 100644
index 000000000000..10406af33c96
--- /dev/null
+++ b/x11-wm/openbox/files/openbox-3.5.2-gnome-session.patch
@@ -0,0 +1,14 @@
+Index: openbox-3.5.2/data/xsession/openbox-gnome-session.in
+===================================================================
+--- openbox-3.5.2.orig/data/xsession/openbox-gnome-session.in
++++ openbox-3.5.2/data/xsession/openbox-gnome-session.in
+@@ -18,6 +18,9 @@ VER=$(gnome-session --version 2>/dev/nul
+ MAJOR=$(echo $VER | cut -d . -f 1)
+ MINOR=$(echo $VER | cut -d . -f 2)
+
++# use gnome menus (gentoo bug #291965)
++export XDG_MENU_PREFIX=gnome-
++
+ # run GNOME with Openbox as its window manager
+
+ if test $MAJOR -lt 2 || (test $MAJOR = 2 && test $MINOR -le 22); then
diff --git a/x11-wm/openbox/metadata.xml b/x11-wm/openbox/metadata.xml
new file mode 100644
index 000000000000..b2f7fe663d1c
--- /dev/null
+++ b/x11-wm/openbox/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>lxde</herd>
+ <maintainer>
+ <email>hwoarang@gentoo.org</email>
+ <name>Markos Chandras</name>
+ </maintainer>
+ <use>
+ <flag name="session">Enables support for session managers</flag>
+ <flag name="xdg">Install the python xdg files for xdg autostart</flag>
+ </use>
+ <upstream>
+ <maintainer status='active'>
+ <email>danakj@orodu.net</email>
+ <name>Dana Jansens</name>
+ </maintainer>
+ <changelog>http://openbox.org/wiki/Openbox:News</changelog>
+ <doc>http://openbox.org/wiki/Help:Contents</doc>
+ <bugs-to>http://openbox.org/wiki/Openbox:Contribute</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/x11-wm/openbox/openbox-3.5.2-r1.ebuild b/x11-wm/openbox/openbox-3.5.2-r1.ebuild
new file mode 100644
index 000000000000..1e823e2a5635
--- /dev/null
+++ b/x11-wm/openbox/openbox-3.5.2-r1.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_7 )
+inherit multilib autotools python-r1 eutils
+
+DESCRIPTION="A standards compliant, fast, light-weight, extensible window manager"
+HOMEPAGE="http://openbox.org/"
+if [[ ${PV} == *9999* ]]; then
+ inherit git-2
+ EGIT_REPO_URI="git://git.openbox.org/dana/openbox"
+ SRC_URI="branding? (
+ http://dev.gentoo.org/~hwoarang/distfiles/surreal-gentoo.tar.gz )"
+ KEYWORDS=""
+
+else
+ SRC_URI="http://openbox.org/dist/openbox/${P}.tar.gz
+ branding? ( http://dev.gentoo.org/~hwoarang/distfiles/surreal-gentoo.tar.gz )"
+ KEYWORDS="alpha amd64 arm ~arm64 hppa ~mips ppc ppc64 sparc x86 ~x86-fbsd ~arm-linux ~x86-linux"
+fi
+
+LICENSE="GPL-2"
+SLOT="3"
+IUSE="branding debug imlib nls session startup-notification static-libs svg xdg"
+REQUIRED_USE="xdg? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="dev-libs/glib:2
+ >=dev-libs/libxml2-2.0
+ >=media-libs/fontconfig-2
+ x11-libs/libXft
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libXt
+ >=x11-libs/pango-1.8[X]
+ imlib? ( media-libs/imlib2 )
+ startup-notification? ( >=x11-libs/startup-notification-0.8 )
+ svg? ( gnome-base/librsvg:2 )
+ xdg? (
+ ${PYTHON_DEPS}
+ dev-python/pyxdg[${PYTHON_USEDEP}]
+ )
+ "
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ x11-proto/xineramaproto"
+
+src_unpack() {
+ if [[ ${PV} == *9999* ]]; then
+ git-2_src_unpack
+ else
+ unpack ${A}
+ fi
+}
+
+src_prepare() {
+ use xdg && python_export_best
+ epatch "${FILESDIR}"/${PN}-3.5.2-gnome-session.patch
+ sed -i \
+ -e "s:-O0 -ggdb ::" \
+ -e 's/-fno-strict-aliasing//' \
+ "${S}"/m4/openbox.m4 || die
+ epatch_user
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ $(use_enable debug) \
+ $(use_enable static-libs static) \
+ $(use_enable nls) \
+ $(use_enable imlib imlib2) \
+ $(use_enable svg librsvg) \
+ $(use_enable startup-notification) \
+ $(use_enable session session-management) \
+ --with-x
+}
+
+src_install() {
+ dodir /etc/X11/Sessions
+ echo "/usr/bin/openbox-session" > "${ED}/etc/X11/Sessions/${PN}"
+ fperms a+x /etc/X11/Sessions/${PN}
+ emake DESTDIR="${D}" install
+ if use branding; then
+ insinto /usr/share/themes
+ doins -r "${WORKDIR}"/Surreal_Gentoo
+ # make it the default theme
+ sed -i \
+ -e "/<theme>/{n; s@<name>.*</name>@<name>Surreal_Gentoo</name>@}" \
+ "${D}"/etc/xdg/openbox/rc.xml \
+ || die "failed to set Surreal Gentoo as the default theme"
+ fi
+ use static-libs || prune_libtool_files --all
+ if use xdg ; then
+ python_replicate_script "${ED}"/usr/libexec/openbox-xdg-autostart
+ else
+ rm "${ED}"/usr/libexec/openbox-xdg-autostart || die
+ fi
+}
diff --git a/x11-wm/openbox/openbox-3.6.1.ebuild b/x11-wm/openbox/openbox-3.6.1.ebuild
new file mode 100644
index 000000000000..613fb3dd0051
--- /dev/null
+++ b/x11-wm/openbox/openbox-3.6.1.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_7 )
+inherit multilib autotools python-r1 eutils
+
+DESCRIPTION="A standards compliant, fast, light-weight, extensible window manager"
+HOMEPAGE="http://openbox.org/"
+if [[ ${PV} == *9999* ]]; then
+ inherit git-2
+ EGIT_REPO_URI="git://git.openbox.org/dana/openbox"
+ SRC_URI="branding? (
+ http://dev.gentoo.org/~hwoarang/distfiles/surreal-gentoo.tar.gz )"
+ KEYWORDS=""
+
+else
+ SRC_URI="http://openbox.org/dist/openbox/${P}.tar.gz
+ branding? ( http://dev.gentoo.org/~hwoarang/distfiles/surreal-gentoo.tar.gz )"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~arm-linux ~x86-linux"
+fi
+
+LICENSE="GPL-2"
+SLOT="3"
+IUSE="branding debug imlib nls session startup-notification static-libs svg xdg"
+REQUIRED_USE="xdg? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="dev-libs/glib:2
+ >=dev-libs/libxml2-2.0
+ >=media-libs/fontconfig-2
+ x11-libs/libXft
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libXt
+ >=x11-libs/pango-1.8[X]
+ imlib? ( media-libs/imlib2 )
+ startup-notification? ( >=x11-libs/startup-notification-0.8 )
+ svg? ( gnome-base/librsvg:2 )
+ xdg? (
+ ${PYTHON_DEPS}
+ dev-python/pyxdg[${PYTHON_USEDEP}]
+ )
+ "
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ x11-proto/xineramaproto"
+
+src_unpack() {
+ if [[ ${PV} == *9999* ]]; then
+ git-2_src_unpack
+ else
+ unpack ${A}
+ fi
+}
+
+src_prepare() {
+ use xdg && python_export_best
+ epatch "${FILESDIR}"/${PN}-3.5.2-gnome-session.patch
+ sed -i \
+ -e "s:-O0 -ggdb ::" \
+ -e 's/-fno-strict-aliasing//' \
+ "${S}"/m4/openbox.m4 || die
+ epatch_user
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ $(use_enable debug) \
+ $(use_enable static-libs static) \
+ $(use_enable nls) \
+ $(use_enable imlib imlib2) \
+ $(use_enable svg librsvg) \
+ $(use_enable startup-notification) \
+ $(use_enable session session-management) \
+ --with-x
+}
+
+src_install() {
+ dodir /etc/X11/Sessions
+ echo "/usr/bin/openbox-session" > "${ED}/etc/X11/Sessions/${PN}"
+ fperms a+x /etc/X11/Sessions/${PN}
+ emake DESTDIR="${D}" install
+ if use branding; then
+ insinto /usr/share/themes
+ doins -r "${WORKDIR}"/Surreal_Gentoo
+ # make it the default theme
+ sed -i \
+ -e "/<theme>/{n; s@<name>.*</name>@<name>Surreal_Gentoo</name>@}" \
+ "${D}"/etc/xdg/openbox/rc.xml \
+ || die "failed to set Surreal Gentoo as the default theme"
+ fi
+ use static-libs || prune_libtool_files --all
+ if use xdg ; then
+ python_replicate_script "${ED}"/usr/libexec/openbox-xdg-autostart
+ else
+ rm "${ED}"/usr/libexec/openbox-xdg-autostart || die
+ fi
+}
diff --git a/x11-wm/openbox/openbox-3.6.ebuild b/x11-wm/openbox/openbox-3.6.ebuild
new file mode 100644
index 000000000000..613fb3dd0051
--- /dev/null
+++ b/x11-wm/openbox/openbox-3.6.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_7 )
+inherit multilib autotools python-r1 eutils
+
+DESCRIPTION="A standards compliant, fast, light-weight, extensible window manager"
+HOMEPAGE="http://openbox.org/"
+if [[ ${PV} == *9999* ]]; then
+ inherit git-2
+ EGIT_REPO_URI="git://git.openbox.org/dana/openbox"
+ SRC_URI="branding? (
+ http://dev.gentoo.org/~hwoarang/distfiles/surreal-gentoo.tar.gz )"
+ KEYWORDS=""
+
+else
+ SRC_URI="http://openbox.org/dist/openbox/${P}.tar.gz
+ branding? ( http://dev.gentoo.org/~hwoarang/distfiles/surreal-gentoo.tar.gz )"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~arm-linux ~x86-linux"
+fi
+
+LICENSE="GPL-2"
+SLOT="3"
+IUSE="branding debug imlib nls session startup-notification static-libs svg xdg"
+REQUIRED_USE="xdg? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="dev-libs/glib:2
+ >=dev-libs/libxml2-2.0
+ >=media-libs/fontconfig-2
+ x11-libs/libXft
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libXt
+ >=x11-libs/pango-1.8[X]
+ imlib? ( media-libs/imlib2 )
+ startup-notification? ( >=x11-libs/startup-notification-0.8 )
+ svg? ( gnome-base/librsvg:2 )
+ xdg? (
+ ${PYTHON_DEPS}
+ dev-python/pyxdg[${PYTHON_USEDEP}]
+ )
+ "
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ x11-proto/xineramaproto"
+
+src_unpack() {
+ if [[ ${PV} == *9999* ]]; then
+ git-2_src_unpack
+ else
+ unpack ${A}
+ fi
+}
+
+src_prepare() {
+ use xdg && python_export_best
+ epatch "${FILESDIR}"/${PN}-3.5.2-gnome-session.patch
+ sed -i \
+ -e "s:-O0 -ggdb ::" \
+ -e 's/-fno-strict-aliasing//' \
+ "${S}"/m4/openbox.m4 || die
+ epatch_user
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ $(use_enable debug) \
+ $(use_enable static-libs static) \
+ $(use_enable nls) \
+ $(use_enable imlib imlib2) \
+ $(use_enable svg librsvg) \
+ $(use_enable startup-notification) \
+ $(use_enable session session-management) \
+ --with-x
+}
+
+src_install() {
+ dodir /etc/X11/Sessions
+ echo "/usr/bin/openbox-session" > "${ED}/etc/X11/Sessions/${PN}"
+ fperms a+x /etc/X11/Sessions/${PN}
+ emake DESTDIR="${D}" install
+ if use branding; then
+ insinto /usr/share/themes
+ doins -r "${WORKDIR}"/Surreal_Gentoo
+ # make it the default theme
+ sed -i \
+ -e "/<theme>/{n; s@<name>.*</name>@<name>Surreal_Gentoo</name>@}" \
+ "${D}"/etc/xdg/openbox/rc.xml \
+ || die "failed to set Surreal Gentoo as the default theme"
+ fi
+ use static-libs || prune_libtool_files --all
+ if use xdg ; then
+ python_replicate_script "${ED}"/usr/libexec/openbox-xdg-autostart
+ else
+ rm "${ED}"/usr/libexec/openbox-xdg-autostart || die
+ fi
+}
diff --git a/x11-wm/openbox/openbox-9999.ebuild b/x11-wm/openbox/openbox-9999.ebuild
new file mode 100644
index 000000000000..dbb6c9e4f38a
--- /dev/null
+++ b/x11-wm/openbox/openbox-9999.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_7 )
+inherit multilib autotools python-r1 eutils
+
+DESCRIPTION="A standards compliant, fast, light-weight, extensible window manager"
+HOMEPAGE="http://openbox.org/"
+if [[ ${PV} == *9999* ]]; then
+ inherit git-2
+ EGIT_REPO_URI="git://git.openbox.org/dana/openbox"
+ SRC_URI="branding? (
+ http://dev.gentoo.org/~hwoarang/distfiles/surreal-gentoo.tar.gz )"
+ KEYWORDS=""
+
+else
+ SRC_URI="http://openbox.org/dist/openbox/${P}.tar.gz
+ branding? ( http://dev.gentoo.org/~hwoarang/distfiles/surreal-gentoo.tar.gz )"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~arm-linux ~x86-linux"
+fi
+
+LICENSE="GPL-2"
+SLOT="3"
+IUSE="branding debug imlib nls session startup-notification static-libs svg xdg"
+REQUIRED_USE="xdg? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="dev-libs/glib:2
+ >=dev-libs/libxml2-2.0
+ >=media-libs/fontconfig-2
+ x11-libs/libXft
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libXt
+ >=x11-libs/pango-1.8[X]
+ imlib? ( media-libs/imlib2 )
+ startup-notification? ( >=x11-libs/startup-notification-0.8 )
+ svg? ( gnome-base/librsvg:2 )
+ xdg? (
+ ${PYTHON_DEPS}
+ dev-python/pyxdg[${PYTHON_USEDEP}]
+ )
+ "
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ virtual/pkgconfig
+ x11-proto/xextproto
+ x11-proto/xf86vidmodeproto
+ x11-proto/xineramaproto"
+
+src_unpack() {
+ if [[ ${PV} == *9999* ]]; then
+ git-2_src_unpack
+ else
+ unpack ${A}
+ fi
+}
+
+src_prepare() {
+ use xdg && python_export_best
+ epatch "${FILESDIR}"/${PN}-3.5.2-gnome-session.patch
+ sed -i \
+ -e "s:-O0 -ggdb ::" \
+ "${S}"/m4/openbox.m4 || die
+ epatch_user
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ $(use_enable debug) \
+ $(use_enable static-libs static) \
+ $(use_enable nls) \
+ $(use_enable imlib imlib2) \
+ $(use_enable svg librsvg) \
+ $(use_enable startup-notification) \
+ $(use_enable session session-management) \
+ --with-x
+}
+
+src_install() {
+ dodir /etc/X11/Sessions
+ echo "/usr/bin/openbox-session" > "${ED}/etc/X11/Sessions/${PN}"
+ fperms a+x /etc/X11/Sessions/${PN}
+ emake DESTDIR="${D}" install
+ if use branding; then
+ insinto /usr/share/themes
+ doins -r "${WORKDIR}"/Surreal_Gentoo
+ # make it the default theme
+ sed -i \
+ -e "/<theme>/{n; s@<name>.*</name>@<name>Surreal_Gentoo</name>@}" \
+ "${D}"/etc/xdg/openbox/rc.xml \
+ || die "failed to set Surreal Gentoo as the default theme"
+ fi
+ use static-libs || prune_libtool_files --all
+ if use xdg ; then
+ python_replicate_script "${ED}"/usr/libexec/openbox-xdg-autostart
+ else
+ rm "${ED}"/usr/libexec/openbox-xdg-autostart || die
+ fi
+}
diff --git a/x11-wm/oroborus/Manifest b/x11-wm/oroborus/Manifest
new file mode 100644
index 000000000000..6fcbfe727063
--- /dev/null
+++ b/x11-wm/oroborus/Manifest
@@ -0,0 +1 @@
+DIST oroborus_2.0.20.tar.gz 335099 SHA256 5220a540bcf6812c6773fbe583d9ea3f54f452cbac55bedcaadeba8c3a9a7b89
diff --git a/x11-wm/oroborus/files/oroborus.desktop b/x11-wm/oroborus/files/oroborus.desktop
new file mode 100644
index 000000000000..725ce52170e3
--- /dev/null
+++ b/x11-wm/oroborus/files/oroborus.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Version=1.0
+Name=Oroborus
+Exec=oroborus
+TryExec=oroborus
+Icon=
+Type=Application
+
+[X-Window Manager]
+SessionManaged=false
diff --git a/x11-wm/oroborus/metadata.xml b/x11-wm/oroborus/metadata.xml
new file mode 100644
index 000000000000..70fd2c65caec
--- /dev/null
+++ b/x11-wm/oroborus/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>maintainer-needed@gentoo.org</email></maintainer>
+ <longdescription>
+ Oroborus is a small and simple but configurable and themeable window
+ manager. There is no fancy dock, clip, wharf, or root menu - these
+ utilities can be provided by other programs. It has support for GNOME
+ and session management, or can be run as a stand-alone window manager.
+ </longdescription>
+</pkgmetadata>
diff --git a/x11-wm/oroborus/oroborus-2.0.20.ebuild b/x11-wm/oroborus/oroborus-2.0.20.ebuild
new file mode 100644
index 000000000000..bc8952754f37
--- /dev/null
+++ b/x11-wm/oroborus/oroborus-2.0.20.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="Small and fast window manager"
+HOMEPAGE="http://www.oroborus.org"
+SRC_URI="mirror://debian/pool/main/o/${PN}/${PN}_${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="gnome"
+
+RDEPEND="x11-libs/libXpm
+ x11-libs/libXext
+ x11-libs/libSM
+ x11-libs/libICE
+ x11-libs/libX11"
+DEPEND="${RDEPEND}
+ x11-proto/xproto
+ x11-proto/xextproto"
+
+src_configure() {
+ econf --disable-dependency-tracking
+}
+
+src_install () {
+ emake DESTDIR="${D}" install
+
+ if use gnome; then
+ insinto /usr/share/gnome/wm-properties
+ doins "${FILESDIR}"/${PN}.desktop
+ fi
+
+ dodoc AUTHORS ChangeLog example.${PN}rc README TODO
+}
diff --git a/x11-wm/pekwm/Manifest b/x11-wm/pekwm/Manifest
new file mode 100644
index 000000000000..4994c2098f7a
--- /dev/null
+++ b/x11-wm/pekwm/Manifest
@@ -0,0 +1,2 @@
+DIST pekwm-0.1.17.tar.bz2 405742 SHA256 8a1fd3bf9f38e8c7bb2b2864c090f986b60cec2281ecf1bba462d120fb327d00 SHA512 fa4c95ddc7e17f737b4e90f32258a79bf2a0abe96a2ab1a4166b1aa6832ff7a978116d224c98c31a4b33444b3c59e9ecd6095ca062d8a65f0f6174803f5b0811 WHIRLPOOL e7371577e9cef2aade3679dbe50bc2124a55fdd443fada46cf3068e7cb9fc70c9f81f747c93a04a2b347c4b772c55b7520030fa0cbac50d4572a8e6599479327
+DIST pekwm-themes.tar.bz2 138599 SHA256 5a14f0c98381e0d5b36dcc2e56b30b0dd279e14b6dd61b199fedf807eccb4a13 SHA512 c95bc980b5aeeb4f4832cb2dbbf82adf72e4a784fcd46432fd6e6a6577ef02823ec1c4b861d07747c066050fc5040aca975e2cdc78342abab99a3d486888a25d WHIRLPOOL 1d55f89b2ca75fa169590e60d72c14c6049eceb100c1fb54ed736657a48a236eb2be6378852366254d2faf0da446eb570eecee3a3388064e7c45e54996dc6a0d
diff --git a/x11-wm/pekwm/metadata.xml b/x11-wm/pekwm/metadata.xml
new file mode 100644
index 000000000000..6746a3d39574
--- /dev/null
+++ b/x11-wm/pekwm/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>jer@gentoo.org</email>
+ </maintainer>
+ <maintainer>
+ <email>linbug+gbz@posteo.org</email>
+ <name>Andreas Schlick</name>
+ </maintainer>
+ <longdescription>
+ Pekwm is a window manager based on aewm++, but it no longer resembles
+ it. It is highly configurable, rather fast, and aimed towards being
+ usable while remaining pretty enough to look at. Features include
+ client window grouping into one window frame, automatic window size,
+ location, grouping and title rewriting properties, keychains, Xinerama
+ support, pixmap theming, and dynamic menus.
+ </longdescription>
+ <use>
+ <flag name='contrib'>Install optional extras in the documentation directory</flag>
+ <flag name='themes'>Install additional themes</flag>
+ </use>
+</pkgmetadata>
diff --git a/x11-wm/pekwm/pekwm-0.1.17.ebuild b/x11-wm/pekwm/pekwm-0.1.17.ebuild
new file mode 100644
index 000000000000..3e160f2a6f8b
--- /dev/null
+++ b/x11-wm/pekwm/pekwm-0.1.17.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+DESCRIPTION="A lightweight window manager initially based on aewm++"
+HOMEPAGE="http://pekwm.org/"
+SRC_URI="
+ http://pekwm.org/projects/pekwm/files/${P}.tar.bz2
+ themes? ( mirror://gentoo/${PN}-themes.tar.bz2 )
+"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=" amd64 ~mips ppc x86 ~x86-fbsd"
+IUSE="contrib debug themes truetype xinerama"
+
+RDEPEND="
+ media-libs/libpng
+ virtual/jpeg
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ truetype? ( x11-libs/libXft )
+ xinerama? ( x11-libs/libXinerama )
+"
+
+DEPEND="
+ ${RDEPEND}
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ if use themes; then
+ rm "${WORKDIR}"/themes/Ace/.theme.swp || die
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable debug) \
+ $(use_enable truetype xft) \
+ $(use_enable xinerama) \
+ --enable-image-jpeg \
+ --enable-image-png \
+ --enable-image-xpm \
+ --enable-shape \
+ --enable-xrandr
+}
+
+src_install() {
+ default
+
+ # Install contributor scripts into doc folder
+ if use contrib ; then
+ docinto /usr/share/doc/${PF}/contrib
+ dodoc contrib/lobo/{check.png,pekwm_autoprop.pl,pekwm_menu_config.pl} \
+ contrib/lobo/{pekwm_menu_config.pl.vars,README,uncheck.png}
+ fi
+
+ if use themes; then
+ insinto /usr/share/${PN}/themes
+ doins -r "${WORKDIR}"/themes/*
+ fi
+
+ # Insert an Xsession
+ echo -e "#!/bin/sh\n\n/usr/bin/${PN}" > "${T}"/${PN} || die
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/${PN}
+
+ # Insert a GDM/KDM xsession file
+ make_session_desktop ${PN} ${PN}
+}
+
+pkg_postinst() {
+ if use contrib ; then
+ elog " User contributed scripts have been installed into:"
+ elog " /usr/share/doc/${PF}/contrib"
+ fi
+}
diff --git a/x11-wm/plwm/Manifest b/x11-wm/plwm/Manifest
new file mode 100644
index 000000000000..61c0e6bd13d0
--- /dev/null
+++ b/x11-wm/plwm/Manifest
@@ -0,0 +1,2 @@
+DIST PLWM-2.7rc1.tar.gz 343570 SHA256 789fbd6229ad63ee9b2d939e27d049282dca45315d8e22debad56636a3b0a305 SHA512 4716677c86cf6b31ba8ea6c4e8fad729d9cf7d9c09b7d56ba6686173793c5b248865f0af281561a2df161433ea0fb2f2ca050dfb3b6c9fedbe41ff0ad0c07f7e WHIRLPOOL c1e678b4f15701c644e3f609c9b53100fe376a09f96454094fddba83c7a1f5c167c4746962e4996586568d110dfb3c4232e0bcaf33d09492946454b2e400d5eb
+DIST plwm-2.5.tar.gz 127248 SHA256 c1fc72f3dd7959743655c2fb2025faf598d1c5b0d75812282b4bb548aedd14de
diff --git a/x11-wm/plwm/files/plwm-2.5-destdir.patch b/x11-wm/plwm/files/plwm-2.5-destdir.patch
new file mode 100644
index 000000000000..8bcd01511731
--- /dev/null
+++ b/x11-wm/plwm/files/plwm-2.5-destdir.patch
@@ -0,0 +1,33 @@
+diff -ur plwm-2.5.orig/Makefile.in plwm-2.5/Makefile.in
+--- plwm-2.5.orig/Makefile.in 2007-06-29 13:30:28.000000000 +0200
++++ plwm-2.5/Makefile.in 2007-06-29 14:07:42.000000000 +0200
+@@ -24,19 +24,16 @@
+ all:
+
+ install:
+- -$(INSTALL) -d $(bindir)
+- -$(INSTALL) -d $(PLWM_PATH)
+- $(INSTALL) -m 644 $(PLWM_MODULES) $(PLWM_PATH)
+- echo >> $(PLWM_PATH)/__init__.py
+- echo "__version__ = '$(VERSION)'" >> $(PLWM_PATH)/__init__.py
+- echo >> $(PLWM_PATH)/__init__.py
+-
+-# Compile .pyc and .pyo-files
+- $(PYTHON) -c 'import sys; sys.path.insert(0, "$(PYTHON_SITE_PATH)"); import plwm.xlibpath; from plwm import *'
+- $(PYTHON) -O -c 'import sys; sys.path.insert(0, "$(PYTHON_SITE_PATH)"); import plwm.xlibpath; from plwm import *'
+- ./install-plwm.sh "$(PLWM)" $(bindir)/plwm
+- ./install-plwm.sh "$(WMM)" $(bindir)/wmm
+- ./install-plwm.sh "$(INSPECT_PLWM)" $(bindir)/inspect_plwm
++ -$(INSTALL) -d $(DESTDIR)$(bindir)
++ -$(INSTALL) -d $(DESTDIR)$(PLWM_PATH)
++ $(INSTALL) -m 644 $(PLWM_MODULES) $(DESTDIR)$(PLWM_PATH)
++ echo >> $(DESTDIR)$(PLWM_PATH)/__init__.py
++ echo "__version__ = '$(VERSION)'" >> $(DESTDIR)$(PLWM_PATH)/__init__.py
++ echo >> $(DESTDIR)$(PLWM_PATH)/__init__.py
++
++ ./install-plwm.sh "$(PLWM)" $(DESTDIR)$(bindir)/plwm
++ ./install-plwm.sh "$(WMM)" $(DESTDIR)$(bindir)/wmm
++ ./install-plwm.sh "$(INSPECT_PLWM)" $(DESTDIR)$(bindir)/inspect_plwm
+
+ clean:
+
diff --git a/x11-wm/plwm/files/plwm-2.5-pep0263.patch b/x11-wm/plwm/files/plwm-2.5-pep0263.patch
new file mode 100644
index 000000000000..ae4562d42073
--- /dev/null
+++ b/x11-wm/plwm/files/plwm-2.5-pep0263.patch
@@ -0,0 +1,8 @@
+diff -ur plwm-2.5.orig/plwm/mw_apm.py plwm-2.5/plwm/mw_apm.py
+--- plwm-2.5.orig/plwm/mw_apm.py 2007-08-27 15:02:46.000000000 +0200
++++ plwm-2.5/plwm/mw_apm.py 2007-08-27 15:04:01.000000000 +0200
+@@ -1,3 +1,4 @@
++# -*- coding: utf-8 -*-
+ # $Id: mw_apm.py,v 1.4 2001/10/18 09:36:52 petli Exp $
+ #
+ # mw_apm.py -- display APM status in a modewindow
diff --git a/x11-wm/plwm/files/plwm-2.5-python2.5.patch b/x11-wm/plwm/files/plwm-2.5-python2.5.patch
new file mode 100644
index 000000000000..334ac94850eb
--- /dev/null
+++ b/x11-wm/plwm/files/plwm-2.5-python2.5.patch
@@ -0,0 +1,21 @@
+diff -ur plwm-2.5.orig/plwm/inspect.py plwm-2.5/plwm/inspect.py
+--- plwm-2.5.orig/plwm/inspect.py 2007-06-29 13:30:28.000000000 +0200
++++ plwm-2.5/plwm/inspect.py 2007-06-29 14:36:43.000000000 +0200
+@@ -23,7 +23,7 @@
+ import sys
+ import traceback
+ import struct
+-import whrandom
++import random
+ import cStringIO
+
+ InspectFileEventType = event.new_event_type()
+@@ -75,7 +75,7 @@
+ # portnumber in a property on screen 0
+
+ addr, port = self.inspect_socket.getsockname()
+- self.inspect_cookie = whrandom.randint(0, 0x7ffffffe)
++ self.inspect_cookie = random.randint(0, 0x7ffffffe)
+
+ self.default_screen.root.change_property(self.PLWM_INSPECT_SERVER,
+ self.PLWM_INSPECT_SERVER,
diff --git a/x11-wm/plwm/files/plwm-2.6_alpha-pep0263.patch b/x11-wm/plwm/files/plwm-2.6_alpha-pep0263.patch
new file mode 100644
index 000000000000..62d04e7d0fd9
--- /dev/null
+++ b/x11-wm/plwm/files/plwm-2.6_alpha-pep0263.patch
@@ -0,0 +1,17 @@
+diff -ur PLWM-2.6a.orig/examples/hrwwm.py PLWM-2.6a/examples/hrwwm.py
+--- PLWM-2.6a.orig/examples/hrwwm.py 2007-08-27 15:06:29.000000000 +0200
++++ PLWM-2.6a/examples/hrwwm.py 2007-08-27 15:07:33.000000000 +0200
+@@ -1,4 +1,5 @@
+ #!/usr/bin/env python
++# -*- coding: utf-8 -*-
+ #
+ # hrwwm.py -- Example PLWM window manager "configuration"
+ #
+diff -ur PLWM-2.6a.orig/plwm/mw_apm.py PLWM-2.6a/plwm/mw_apm.py
+--- PLWM-2.6a.orig/plwm/mw_apm.py 2007-08-27 15:06:29.000000000 +0200
++++ PLWM-2.6a/plwm/mw_apm.py 2007-08-27 15:07:00.000000000 +0200
+@@ -1,3 +1,4 @@
++# -*- coding: utf-8 -*-
+ # $Id: mw_apm.py,v 1.4 2001/10/18 09:36:52 petli Exp $
+ #
+ # mw_apm.py -- display APM status in a modewindow
diff --git a/x11-wm/plwm/files/plwm-2.6_alpha-python2.5.patch b/x11-wm/plwm/files/plwm-2.6_alpha-python2.5.patch
new file mode 100644
index 000000000000..af22a96504a9
--- /dev/null
+++ b/x11-wm/plwm/files/plwm-2.6_alpha-python2.5.patch
@@ -0,0 +1,21 @@
+diff -ur PLWM-2.6a.orig/plwm/inspect.py PLWM-2.6a/plwm/inspect.py
+--- PLWM-2.6a.orig/plwm/inspect.py 2007-06-29 14:40:54.000000000 +0200
++++ PLWM-2.6a/plwm/inspect.py 2007-06-29 14:41:25.000000000 +0200
+@@ -23,7 +23,7 @@
+ import sys
+ import traceback
+ import struct
+-import whrandom
++import random
+ import cStringIO
+
+ InspectFileEventType = event.new_event_type()
+@@ -75,7 +75,7 @@
+ # portnumber in a property on screen 0
+
+ addr, port = self.inspect_socket.getsockname()
+- self.inspect_cookie = whrandom.randint(0, 0x7ffffffe)
++ self.inspect_cookie = random.randint(0, 0x7ffffffe)
+
+ self.default_screen.root.change_property(self.PLWM_INSPECT_SERVER,
+ self.PLWM_INSPECT_SERVER,
diff --git a/x11-wm/plwm/files/plwm-2.6_alpha.patch b/x11-wm/plwm/files/plwm-2.6_alpha.patch
new file mode 100644
index 000000000000..2a4fd8bc3b0f
--- /dev/null
+++ b/x11-wm/plwm/files/plwm-2.6_alpha.patch
@@ -0,0 +1,27 @@
+--- utils/wmm_orig.py 2001-11-26 13:48:21.000000000 +0000
++++ utils/wmm.py 2004-06-04 14:21:41.228567568 +0100
+@@ -38,10 +38,6 @@
+
+ import sys
+ import os
+-###SETUP PATH
+-sys.path[1:1] = [os.path.join(sys.path[0], '..')]
+-import plwm.xlibpath
+-###END SETUP PATH
+
+ from Xlib import display, rdb, X, Xutil
+ import string
+
+--- utils/inspect_plwm_orig.py 2001-01-17 15:28:30.000000000 +0000
++++ utils/inspect_plwm.py 2004-06-04 14:21:30.148252032 +0100
+@@ -22,10 +22,6 @@
+
+ import sys
+ import os
+-###SETUP PATH
+-sys.path[1:1] = [os.path.join(sys.path[0], '..')]
+-import plwm.xlibpath
+-###END SETUP PATH
+
+ from Xlib import display, rdb
+ import readline
diff --git a/x11-wm/plwm/files/plwm-2.7_rc1-pep0263.patch b/x11-wm/plwm/files/plwm-2.7_rc1-pep0263.patch
new file mode 100644
index 000000000000..aadc8f86f458
--- /dev/null
+++ b/x11-wm/plwm/files/plwm-2.7_rc1-pep0263.patch
@@ -0,0 +1,17 @@
+diff -ur PLWM-2.7rc1.orig/examples/hrwwm.py PLWM-2.7rc1/examples/hrwwm.py
+--- PLWM-2.7rc1.orig/examples/hrwwm.py 2007-08-27 15:06:29.000000000 +0200
++++ PLWM-2.7rc1/examples/hrwwm.py 2007-08-27 15:07:33.000000000 +0200
+@@ -1,4 +1,5 @@
+ #!/usr/bin/env python
++# -*- coding: utf-8 -*-
+ #
+ # hrwwm.py -- Example PLWM window manager "configuration"
+ #
+diff -ur PLWM-2.7rc1.orig/plwm/mw_apm.py PLWM-2.7rc1/plwm/mw_apm.py
+--- PLWM-2.7rc1.orig/plwm/mw_apm.py 2007-08-27 15:06:29.000000000 +0200
++++ PLWM-2.7rc1/plwm/mw_apm.py 2007-08-27 15:07:00.000000000 +0200
+@@ -1,3 +1,4 @@
++# -*- coding: utf-8 -*-
+ #
+ # mw_apm.py -- display APM status in a modewindow
+ #
diff --git a/x11-wm/plwm/metadata.xml b/x11-wm/plwm/metadata.xml
new file mode 100644
index 000000000000..b260579473a5
--- /dev/null
+++ b/x11-wm/plwm/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ </maintainer>
+ <longdescription>
+ PLWM is a Python package, containing classes suitable for
+ implementing a window manager. PLWM is also a window manager,
+ using the PLWM package.
+ </longdescription>
+ <upstream>
+ <remote-id type="sourceforge">plwm</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/x11-wm/plwm/plwm-2.5-r1.ebuild b/x11-wm/plwm/plwm-2.5-r1.ebuild
new file mode 100644
index 000000000000..214a9555e761
--- /dev/null
+++ b/x11-wm/plwm/plwm-2.5-r1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+PYTHON_DEPEND="2"
+
+inherit eutils python
+
+DESCRIPTION="Python classes for, and an implementation of, a window manager"
+HOMEPAGE="http://plwm.sourceforge.net/"
+SRC_URI="mirror://sourceforge/plwm/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="ppc x86"
+IUSE=""
+
+DEPEND=">=dev-python/python-xlib-0.12"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}/${P}-destdir.patch"
+ epatch "${FILESDIR}/${P}-python2.5.patch"
+ epatch "${FILESDIR}/${P}-pep0263.patch"
+}
+
+src_compile() {
+ econf || die "econf failed"
+ emake || die "emake failed"
+ emake -C doc || die "emake -C doc failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ doinfo doc/*.info* || die "doinfo failed"
+ dodoc README NEWS ONEWS examples/* || die "dodoc failed"
+}
+
+pkg_postinst() {
+ python_mod_optimize $(python_get_sitedir)/plwm
+}
+
+pkg_postrm() {
+ python_mod_cleanup $(python_get_sitedir)/plwm
+}
diff --git a/x11-wm/plwm/plwm-2.7_rc1-r1.ebuild b/x11-wm/plwm/plwm-2.7_rc1-r1.ebuild
new file mode 100644
index 000000000000..87a6f4159029
--- /dev/null
+++ b/x11-wm/plwm/plwm-2.7_rc1-r1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1 eutils
+
+MY_P=PLWM-${PV/_}
+
+DESCRIPTION="Python classes for, and an implementation of, a window manager"
+HOMEPAGE="http://plwm.sourceforge.net/"
+SRC_URI="mirror://sourceforge/plwm/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+RDEPEND=">=dev-python/python-xlib-0.14[${PYTHON_USEDEP}]"
+DEPEND="sys-apps/texinfo"
+
+S=${WORKDIR}/${MY_P}
+
+PATCHES=(
+ "${FILESDIR}"/${P}-pep0263.patch
+)
+
+python_compile_all() {
+ emake -C "${S}"/doc
+}
+
+python_install() {
+ distutils-r1_python_install
+
+ python_newscript examples/examplewm.py plwm
+ python_doscript utils/*.py
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ doinfo doc/*.info
+
+ dodoc ONEWS
+ dodoc -r examples
+ docinto utils
+ dodoc utils/ChangeLog
+}
diff --git a/x11-wm/plwm/plwm-2.7_rc1.ebuild b/x11-wm/plwm/plwm-2.7_rc1.ebuild
new file mode 100644
index 000000000000..3da43876e73b
--- /dev/null
+++ b/x11-wm/plwm/plwm-2.7_rc1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+PYTHON_DEPEND="2"
+
+inherit distutils eutils
+
+MY_P=PLWM-${PV/_}
+
+DESCRIPTION="Python classes for, and an implementation of, a window manager"
+HOMEPAGE="http://plwm.sourceforge.net/"
+SRC_URI="mirror://sourceforge/plwm/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+RDEPEND=">=dev-python/python-xlib-0.14"
+DEPEND="sys-apps/texinfo"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ python_set_active_version 2
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-pep0263.patch
+ python_convert_shebangs -r 2 examples/examplewm.py utils/*.py
+ distutils_src_prepare
+}
+
+src_compile() {
+ distutils_src_compile
+ emake -C doc || die
+}
+
+src_install() {
+ distutils_src_install
+
+ newbin examples/examplewm.py plwm || die
+ dobin utils/*.py || die
+
+ doinfo doc/*.info || die
+
+ dodoc {,O}NEWS || die
+ docinto examples
+ dodoc examples/* || die
+ docinto utils
+ dodoc utils/ChangeLog || die
+}
diff --git a/x11-wm/qtile/Manifest b/x11-wm/qtile/Manifest
new file mode 100644
index 000000000000..1d8be709b203
--- /dev/null
+++ b/x11-wm/qtile/Manifest
@@ -0,0 +1,7 @@
+DIST qtile-0.10.0.tar.gz 300186 SHA256 d340b1f6df8d78e1f8868ad22862056ed38267fd2e44538361449e6079412948 SHA512 198d572b27f1e1c7636c7cb0ff5751494c72e919259c67e08eecc0c8c64018d1b64df66840146fada4f128ac69a9fa6b8c39572473ff6c4addee609011b7bc28 WHIRLPOOL 05564ec65d7d96b0dc6085e346f071b7d803017d1c23ce24d1312b036c5c36dbf24308ad634553c8c462695f423d52c30f00d21d572e3609d32ea446bf2489a1
+DIST qtile-0.10.1.tar.gz 300217 SHA256 24fc598ca73d2e95ddf4bc29cbfb638253696dafba0ffaaadb103392d248fe96 SHA512 dec5555107d5b99dea21cf95ba3a79fb1a0c6a7628d26abab5bcedbd1898664b477c4e2fe03885d7d27abd757908878d46ace33ca20e94ba04dba41e742dd52b WHIRLPOOL 455f5bb6bf885e7e403100cae7c839482a6e9236f237ae0d71a52e9064ec15a335462653a6ed8dd9c128606090fc4bfe230e54492efe47f1bc65460e0a781dac
+DIST qtile-0.5.tar.gz 317041 SHA256 f80cd73d6655ab53baa6ae11afb9561f724515052e4ba570e6e978abc78c1167 SHA512 2af8a13dcc355b4f556e77a7c78235eb39e9112631750d6680cc1d96c7895ffd3c8ac937ec8b796f4e3f841d39b10aafb930b440addfd8e2fc951e2010e3dc98 WHIRLPOOL d88f70906de570d129aae38ff9ca7a829aa1d9b6d61a179a0cf4ad798d9314c9364a905739168a60b9c37384c13034172920c76cef0981a26df04544e94fe472
+DIST qtile-0.6.tar.gz 257000 SHA256 73508a5ff18579091434131c54aaa3fd4413abe9df4b56962dcbcb6196f1bb36 SHA512 512961f6a47d52d055fe1f7889a5e0c00fe95c55c25f88d1c0d0d3b0253a65579dcbe2cd5c17e04d8a5533e0befc7548c459d64961e2f11f3944803de29e1c25 WHIRLPOOL 5daa3c1464f714c633ac58bb5d56ddcfb8949850475ed155e03eb1ec444c002e4b4f47a3637d2c4e510fea94d69ef1cdc4c8e647bc29dcd62cffb1b95c2326fe
+DIST qtile-0.7.0.tar.gz 265068 SHA256 12bb01dd30d65ed44994f17c2a0e2803b34c108108ac2085aa81e3cd8f3264d9 SHA512 facd319a979bf5dd2ec9c336a203dce197678bcaf02df3208e0ff49cd254683242a76c884f1dccda1689a421a680834aa4194f250e93bbfcf048119148730171 WHIRLPOOL 18024c465cce95f703e2d9bf25f4d4a68197f0429a2c0edadf2e34807127b8248ed80408515ff9d254eb026853350e9291c1da719fe5144608f35eb002c3b26c
+DIST qtile-0.8.0.tar.gz 275673 SHA256 1d7d27da9277ee91e6d60310065be39823c01c715a475935accdb89d3e8e9e98 SHA512 80574b67f46488e384fd4e21e3217d94de9a6a49394fb108775bf89243600d501f104adb260e84ed42312828b4ae0928bfde9b8737eed07060bfc50fb69778d5 WHIRLPOOL e5af8c2b38d4a77dc1c23ea3c3d78210374e4471e8816d1a457cdb8ec240efba95d649f3e3bb53ba46ee3fc7e57c94cac4409122f828efcd17ed4caa2656f142
+DIST qtile-0.9.1.tar.gz 285933 SHA256 c0ccf38a7e13f2663fe80d546c2a849384ad3698253d633fe33bd99163f9418d SHA512 5453b95ffa02b2f5ba04696bd29a662585bdfe5fa33d68c3b8a654d49279bba3029decf27ac47209630d5ac1dd8fbd21359799d72ce517eda13860ff8eaaa9a4 WHIRLPOOL 9295d9f8b9ab96ee983f32d843ff7d882e4d725f8b8d8846f53a6dbfd8bf17de84d730c7aa0a3a8cefd77af74ec287f63543046e162e898649b136e1f332a06a
diff --git a/x11-wm/qtile/files/qtile-session b/x11-wm/qtile/files/qtile-session
new file mode 100644
index 000000000000..56a96ddd79ea
--- /dev/null
+++ b/x11-wm/qtile/files/qtile-session
@@ -0,0 +1,89 @@
+#!/bin/sh
+# qtile Xsession starter, based on Xsession from x11-apps/xinit
+
+# redirect errors to a file in user's home directory if we can
+for errfile in "$HOME/.qtile-errors" "${TMPDIR-/tmp}/qtile-$USER" "/tmp/qtile-$USER"
+do
+ if ( cp /dev/null "$errfile" 2> /dev/null )
+ then
+ chmod 600 "$errfile"
+ exec > "$errfile" 2>&1
+ break
+ fi
+done
+
+userresources=$HOME/.Xresources
+usermodmap=$HOME/.Xmodmap
+userxkbmap=$HOME/.Xkbmap
+
+sysresources=/etc/X11/Xresources
+sysmodmap=/etc/X11/Xmodmap
+sysxkbmap=/etc/X11/Xkbmap
+
+rh6sysresources=/etc/X11/xinit/Xresources
+rh6sysmodmap=/etc/X11/xinit/Xmodmap
+
+# merge in defaults
+if [ -f "$rh6sysresources" ]; then
+ xrdb -merge "$rh6sysresources"
+fi
+
+if [ -f "$sysresources" ]; then
+ xrdb -merge "$sysresources"
+fi
+
+if [ -f "$userresources" ]; then
+ xrdb -merge "$userresources"
+fi
+
+# merge in keymaps
+if [ -f "$sysxkbmap" ]; then
+ setxkbmap `cat "$sysxkbmap"`
+ XKB_IN_USE=yes
+fi
+
+if [ -f "$userxkbmap" ]; then
+ setxkbmap `cat "$userxkbmap"`
+ XKB_IN_USE=yes
+fi
+
+#
+# Eeek, this seems like too much magic here
+#
+if [ -z "$XKB_IN_USE" -a ! -L /etc/X11/X ]; then
+ if grep '^exec.*/Xsun' /etc/X11/X > /dev/null 2>&1 && [ -f /etc/X11/XF86Config ]; then
+ xkbsymbols=`sed -n -e 's/^[ ]*XkbSymbols[ ]*"\(.*\)".*$/\1/p' /etc/X11/XF86Config /etc/X11/xorg.conf`
+ if [ -n "$xkbsymbols" ]; then
+ setxkbmap -symbols "$xkbsymbols"
+ XKB_IN_USE=yes
+ fi
+ fi
+fi
+
+# xkb and xmodmap don't play nice together
+if [ -z "$XKB_IN_USE" ]; then
+ if [ -f "$rh6sysmodmap" ]; then
+ xmodmap "$rh6sysmodmap"
+ fi
+
+ if [ -f "$sysmodmap" ]; then
+ xmodmap "$sysmodmap"
+ fi
+
+ if [ -f "$usermodmap" ]; then
+ xmodmap "$usermodmap"
+ fi
+fi
+
+unset XKB_IN_USE
+
+# run all system xinitrc shell scripts.
+if [ -d /etc/X11/xinit/xinitrc.d ]; then
+ for i in /etc/X11/xinit/xinitrc.d/* ; do
+ if [ -x "$i" ]; then
+ . "$i"
+ fi
+ done
+fi
+
+exec /usr/bin/qtile
diff --git a/x11-wm/qtile/metadata.xml b/x11-wm/qtile/metadata.xml
new file mode 100644
index 000000000000..8315743304c3
--- /dev/null
+++ b/x11-wm/qtile/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>radhermit@gentoo.org</email>
+ <name>Tim Harder</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">qtile/qtile</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/x11-wm/qtile/qtile-0.10.0.ebuild b/x11-wm/qtile/qtile-0.10.0.ebuild
new file mode 100644
index 000000000000..b59d1b106ae2
--- /dev/null
+++ b/x11-wm/qtile/qtile-0.10.0.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python{2_7,3_4} )
+
+inherit distutils-r1 virtualx
+
+if [[ ${PV} == 9999* ]] ; then
+ EGIT_REPO_URI="https://github.com/qtile/qtile.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/qtile/qtile/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="A full-featured, hackable tiling window manager written in Python"
+HOMEPAGE="http://qtile.org/"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="test"
+# docs require sphinxcontrib-blockdiag and sphinxcontrib-seqdiag
+
+RDEPEND="x11-libs/pango
+ >=dev-python/cairocffi-0.7[${PYTHON_USEDEP}]
+ >=dev-python/cffi-1.1.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.4.1[${PYTHON_USEDEP}]
+ >=dev-python/xcffib-0.3.2[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep 'dev-python/trollius[${PYTHON_USEDEP}]' 'python2*')
+"
+DEPEND="${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/nose[${PYTHON_USEDEP}]
+ x11-base/xorg-server[kdrive]
+ )
+"
+
+RESTRICT="test"
+
+python_test() {
+ VIRTUALX_COMMAND="nosetests" virtualmake
+}
+
+python_install_all() {
+ local DOCS=( CHANGELOG README.rst )
+ distutils-r1_python_install_all
+
+ insinto /usr/share/xsessions
+ doins resources/qtile.desktop
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN}
+}
diff --git a/x11-wm/qtile/qtile-0.10.1.ebuild b/x11-wm/qtile/qtile-0.10.1.ebuild
new file mode 100644
index 000000000000..b59d1b106ae2
--- /dev/null
+++ b/x11-wm/qtile/qtile-0.10.1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python{2_7,3_4} )
+
+inherit distutils-r1 virtualx
+
+if [[ ${PV} == 9999* ]] ; then
+ EGIT_REPO_URI="https://github.com/qtile/qtile.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/qtile/qtile/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="A full-featured, hackable tiling window manager written in Python"
+HOMEPAGE="http://qtile.org/"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="test"
+# docs require sphinxcontrib-blockdiag and sphinxcontrib-seqdiag
+
+RDEPEND="x11-libs/pango
+ >=dev-python/cairocffi-0.7[${PYTHON_USEDEP}]
+ >=dev-python/cffi-1.1.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.4.1[${PYTHON_USEDEP}]
+ >=dev-python/xcffib-0.3.2[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep 'dev-python/trollius[${PYTHON_USEDEP}]' 'python2*')
+"
+DEPEND="${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/nose[${PYTHON_USEDEP}]
+ x11-base/xorg-server[kdrive]
+ )
+"
+
+RESTRICT="test"
+
+python_test() {
+ VIRTUALX_COMMAND="nosetests" virtualmake
+}
+
+python_install_all() {
+ local DOCS=( CHANGELOG README.rst )
+ distutils-r1_python_install_all
+
+ insinto /usr/share/xsessions
+ doins resources/qtile.desktop
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN}
+}
diff --git a/x11-wm/qtile/qtile-0.5-r1.ebuild b/x11-wm/qtile/qtile-0.5-r1.ebuild
new file mode 100644
index 000000000000..7db2d3cd7963
--- /dev/null
+++ b/x11-wm/qtile/qtile-0.5-r1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1 vcs-snapshot virtualx
+
+DESCRIPTION="A full-featured, hackable tiling window manager written in Python"
+HOMEPAGE="http://qtile.org/"
+SRC_URI="https://github.com/qtile/qtile/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc test"
+
+RDEPEND=">=dev-python/pycairo-1.10.0-r4[xcb,${PYTHON_USEDEP}]
+ dev-python/pygtk:2[${PYTHON_USEDEP}]
+ >=x11-libs/xpyb-1.3.1-r1[${PYTHON_USEDEP}]"
+DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
+ doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
+ test? (
+ ${RDEPEND}
+ dev-python/nose[${PYTHON_USEDEP}]
+ dev-python/python-xlib[${PYTHON_USEDEP}]
+ x11-base/xorg-server[kdrive]
+ )"
+
+# tests fail due to xauth errors from python-xlib
+RESTRICT="test"
+
+python_compile_all() {
+ use doc && emake -C docs html
+}
+
+python_test() {
+ VIRTUALX_COMMAND="nosetests" virtualmake
+}
+
+python_install_all() {
+ local DOCS=( CHANGELOG README.rst TODO.rst )
+ distutils-r1_python_install_all
+
+ use doc && dohtml -r docs/_build/html/*
+
+ insinto /usr/share/xsessions
+ doins resources/qtile.desktop
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN}
+}
diff --git a/x11-wm/qtile/qtile-0.6.ebuild b/x11-wm/qtile/qtile-0.6.ebuild
new file mode 100644
index 000000000000..199463e01936
--- /dev/null
+++ b/x11-wm/qtile/qtile-0.6.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1 virtualx
+
+DESCRIPTION="A full-featured, hackable tiling window manager written in Python"
+HOMEPAGE="http://qtile.org/"
+SRC_URI="https://github.com/qtile/qtile/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc test"
+
+RDEPEND=">=dev-python/pycairo-1.10.0-r4[xcb,${PYTHON_USEDEP}]
+ dev-python/pygtk:2[${PYTHON_USEDEP}]
+ >=x11-libs/xpyb-1.3.1-r1[${PYTHON_USEDEP}]"
+DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
+ doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
+ test? (
+ ${RDEPEND}
+ dev-python/nose[${PYTHON_USEDEP}]
+ dev-python/python-xlib[${PYTHON_USEDEP}]
+ x11-base/xorg-server[kdrive]
+ )"
+
+# tests fail due to xauth errors from python-xlib
+RESTRICT="test"
+
+python_compile_all() {
+ use doc && emake -C docs html
+}
+
+python_test() {
+ VIRTUALX_COMMAND="nosetests" virtualmake
+}
+
+python_install_all() {
+ local DOCS=( CHANGELOG README.rst )
+ distutils-r1_python_install_all
+
+ use doc && dohtml -r docs/_build/html/*
+
+ insinto /usr/share/xsessions
+ doins resources/qtile.desktop
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN}
+}
diff --git a/x11-wm/qtile/qtile-0.7.0.ebuild b/x11-wm/qtile/qtile-0.7.0.ebuild
new file mode 100644
index 000000000000..1c538a26eaf7
--- /dev/null
+++ b/x11-wm/qtile/qtile-0.7.0.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1 virtualx
+
+if [[ ${PV} == 9999* ]] ; then
+ EGIT_REPO_URI="git://github.com/qtile/qtile.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/qtile/qtile/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="A full-featured, hackable tiling window manager written in Python"
+HOMEPAGE="http://qtile.org/"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="doc test"
+
+RDEPEND=">=dev-python/pycairo-1.10.0-r4[xcb,${PYTHON_USEDEP}]
+ dev-python/pygtk:2[${PYTHON_USEDEP}]
+ >=x11-libs/xpyb-1.3.1-r1[${PYTHON_USEDEP}]"
+DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
+ doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
+ test? (
+ ${RDEPEND}
+ dev-python/nose[${PYTHON_USEDEP}]
+ dev-python/python-xlib[${PYTHON_USEDEP}]
+ x11-base/xorg-server[kdrive]
+ )"
+
+# tests fail due to xauth errors from python-xlib
+RESTRICT="test"
+
+python_compile_all() {
+ use doc && emake -C docs html
+}
+
+python_test() {
+ VIRTUALX_COMMAND="nosetests" virtualmake
+}
+
+python_install_all() {
+ local DOCS=( CHANGELOG README.rst )
+ use doc && local HTML_DOCS=( docs/_build/html/. )
+ distutils-r1_python_install_all
+
+ insinto /usr/share/xsessions
+ doins resources/qtile.desktop
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN}
+}
diff --git a/x11-wm/qtile/qtile-0.8.0.ebuild b/x11-wm/qtile/qtile-0.8.0.ebuild
new file mode 100644
index 000000000000..1c538a26eaf7
--- /dev/null
+++ b/x11-wm/qtile/qtile-0.8.0.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1 virtualx
+
+if [[ ${PV} == 9999* ]] ; then
+ EGIT_REPO_URI="git://github.com/qtile/qtile.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/qtile/qtile/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="A full-featured, hackable tiling window manager written in Python"
+HOMEPAGE="http://qtile.org/"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="doc test"
+
+RDEPEND=">=dev-python/pycairo-1.10.0-r4[xcb,${PYTHON_USEDEP}]
+ dev-python/pygtk:2[${PYTHON_USEDEP}]
+ >=x11-libs/xpyb-1.3.1-r1[${PYTHON_USEDEP}]"
+DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
+ doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
+ test? (
+ ${RDEPEND}
+ dev-python/nose[${PYTHON_USEDEP}]
+ dev-python/python-xlib[${PYTHON_USEDEP}]
+ x11-base/xorg-server[kdrive]
+ )"
+
+# tests fail due to xauth errors from python-xlib
+RESTRICT="test"
+
+python_compile_all() {
+ use doc && emake -C docs html
+}
+
+python_test() {
+ VIRTUALX_COMMAND="nosetests" virtualmake
+}
+
+python_install_all() {
+ local DOCS=( CHANGELOG README.rst )
+ use doc && local HTML_DOCS=( docs/_build/html/. )
+ distutils-r1_python_install_all
+
+ insinto /usr/share/xsessions
+ doins resources/qtile.desktop
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN}
+}
diff --git a/x11-wm/qtile/qtile-0.9.1-r1.ebuild b/x11-wm/qtile/qtile-0.9.1-r1.ebuild
new file mode 100644
index 000000000000..fd21c24c9f46
--- /dev/null
+++ b/x11-wm/qtile/qtile-0.9.1-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python{2_7,3_4} )
+
+inherit distutils-r1 virtualx
+
+if [[ ${PV} == 9999* ]] ; then
+ EGIT_REPO_URI="https://github.com/qtile/qtile.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/qtile/qtile/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="A full-featured, hackable tiling window manager written in Python"
+HOMEPAGE="http://qtile.org/"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="test"
+# docs require sphinxcontrib-blockdiag and sphinxcontrib-seqdiag
+
+RDEPEND="x11-libs/pango
+ >=dev-python/cairocffi-0.6[${PYTHON_USEDEP}]
+ >=dev-python/cffi-0.8.2[${PYTHON_USEDEP}]
+ >=dev-python/six-1.4.1[${PYTHON_USEDEP}]
+ >=dev-python/xcffib-0.1.11[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep 'dev-python/trollius[${PYTHON_USEDEP}]' 'python2*')
+"
+DEPEND="${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/nose[${PYTHON_USEDEP}]
+ x11-base/xorg-server[kdrive]
+ )
+"
+
+RESTRICT="test"
+
+python_test() {
+ VIRTUALX_COMMAND="nosetests" virtualmake
+}
+
+python_install_all() {
+ local DOCS=( CHANGELOG README.rst )
+ distutils-r1_python_install_all
+
+ insinto /usr/share/xsessions
+ doins resources/qtile.desktop
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN}
+}
diff --git a/x11-wm/qtile/qtile-9999.ebuild b/x11-wm/qtile/qtile-9999.ebuild
new file mode 100644
index 000000000000..b59d1b106ae2
--- /dev/null
+++ b/x11-wm/qtile/qtile-9999.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python{2_7,3_4} )
+
+inherit distutils-r1 virtualx
+
+if [[ ${PV} == 9999* ]] ; then
+ EGIT_REPO_URI="https://github.com/qtile/qtile.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/qtile/qtile/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="A full-featured, hackable tiling window manager written in Python"
+HOMEPAGE="http://qtile.org/"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="test"
+# docs require sphinxcontrib-blockdiag and sphinxcontrib-seqdiag
+
+RDEPEND="x11-libs/pango
+ >=dev-python/cairocffi-0.7[${PYTHON_USEDEP}]
+ >=dev-python/cffi-1.1.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.4.1[${PYTHON_USEDEP}]
+ >=dev-python/xcffib-0.3.2[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep 'dev-python/trollius[${PYTHON_USEDEP}]' 'python2*')
+"
+DEPEND="${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/nose[${PYTHON_USEDEP}]
+ x11-base/xorg-server[kdrive]
+ )
+"
+
+RESTRICT="test"
+
+python_test() {
+ VIRTUALX_COMMAND="nosetests" virtualmake
+}
+
+python_install_all() {
+ local DOCS=( CHANGELOG README.rst )
+ distutils-r1_python_install_all
+
+ insinto /usr/share/xsessions
+ doins resources/qtile.desktop
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN}
+}
diff --git a/x11-wm/ratpoison/Manifest b/x11-wm/ratpoison/Manifest
new file mode 100644
index 000000000000..e6ffb24851bf
--- /dev/null
+++ b/x11-wm/ratpoison/Manifest
@@ -0,0 +1 @@
+DIST ratpoison-1.4.8.tar.xz 364700 SHA256 da4695636d1fce8883ef2144d79ce46ebb0431a5da02440bd1ffec5dca17a0f0 SHA512 10b44489e60d3186ca407a5bd87e23dbd737cdafee22ea7284ac4db8bb4463081af483460d1899161fbae2973f4d25fbd1bfd354e3ffb59735baf69bbd6f94f6 WHIRLPOOL 53e087a28e685f7667ecbf2302db3df88382ac5840c898b3b8e7954f5c6de3b6f6928e8d021df30e5562991dab5c1c1b810556abc8fdef8979ffc062dd144426
diff --git a/x11-wm/ratpoison/files/50ratpoison-gentoo.el b/x11-wm/ratpoison/files/50ratpoison-gentoo.el
new file mode 100644
index 000000000000..b8885bd7adc4
--- /dev/null
+++ b/x11-wm/ratpoison/files/50ratpoison-gentoo.el
@@ -0,0 +1,10 @@
+
+;;; site-lisp configuration for ratpoison
+
+(add-to-list 'load-path "@SITELISP@")
+
+(autoload 'ratpoisonrc-mode "ratpoison" "Mode for ratpoison configuration files." t)
+(autoload 'ratpoison-command "ratpoison" "Run a ratpoison command." t)
+(autoload 'ratpoison-command-on-region "ratpoison" "Run a ratpoison command contained in the region." t)
+(autoload 'ratpoison-info "ratpoison" "Call up the ratpoison info page." t)
+(autoload 'ratpoison-command-info "ratpoison" "Call up the info page listing the ratpoison commands." t) \ No newline at end of file
diff --git a/x11-wm/ratpoison/files/ratpoison.desktop b/x11-wm/ratpoison/files/ratpoison.desktop
new file mode 100644
index 000000000000..3f9e2dd5a4d6
--- /dev/null
+++ b/x11-wm/ratpoison/files/ratpoison.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=ratpoison
+Comment=Say good-bye to the rodent
+Exec=ratpoison
+TryExec=ratpoison
+Icon=
+Type=Application
diff --git a/x11-wm/ratpoison/files/ratpoison.el-gentoo.patch b/x11-wm/ratpoison/files/ratpoison.el-gentoo.patch
new file mode 100644
index 000000000000..64f8f4ee0bc3
--- /dev/null
+++ b/x11-wm/ratpoison/files/ratpoison.el-gentoo.patch
@@ -0,0 +1,11 @@
+--- a/contrib/ratpoison.el
++++ b/contrib/ratpoison.el
+@@ -44,6 +44,8 @@
+ ;; - auto-completion of commands
+ ;; - probably a bunch of other things
+
++(require 'generic)
++
+ (defvar ratpoison-commands-0
+ (list
+ "abort"
diff --git a/x11-wm/ratpoison/files/ratpoison.xsession b/x11-wm/ratpoison/files/ratpoison.xsession
new file mode 100644
index 000000000000..664edf72a543
--- /dev/null
+++ b/x11-wm/ratpoison/files/ratpoison.xsession
@@ -0,0 +1 @@
+/usr/bin/ratpoison
diff --git a/x11-wm/ratpoison/metadata.xml b/x11-wm/ratpoison/metadata.xml
new file mode 100644
index 000000000000..35f6ddeb9f7f
--- /dev/null
+++ b/x11-wm/ratpoison/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer><email>jer@gentoo.org</email></maintainer>
+ <longdescription>
+ Ratpoison is a simple Window Manager with no fat library dependencies,
+ no fancy graphics, no window decorations, and no rodent dependence. It
+ is largely modelled after GNU Screen which has done wonders in the
+ virtual terminal market.
+
+ All windows are maximized and kept maximized to take full advantage of
+ your precious screen real estate.
+
+ All interaction with the window manager is done through keystrokes.
+ ratpoison has a prefix map to minimize the key clobbering that cripples
+ Emacs and other quality pieces of software.
+ </longdescription>
+<use>
+ <flag name="history">Use <pkg>sys-libs/readline</pkg> for history handling</flag>
+ <flag name="sloppy">Install sloppy, a focus-follows-mouse implementation for ratpoison</flag>
+</use>
+</pkgmetadata>
diff --git a/x11-wm/ratpoison/ratpoison-1.4.8.ebuild b/x11-wm/ratpoison/ratpoison-1.4.8.ebuild
new file mode 100644
index 000000000000..057e4edda5ee
--- /dev/null
+++ b/x11-wm/ratpoison/ratpoison-1.4.8.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit elisp-common eutils toolchain-funcs
+
+DESCRIPTION="an extremely light-weight and barebones wm modelled after screen"
+HOMEPAGE="http://www.nongnu.org/ratpoison/"
+SRC_URI="http://savannah.nongnu.org/download/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 hppa ppc x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux"
+IUSE="debug emacs +history sloppy +xft"
+
+RDEPEND="
+ emacs? ( virtual/emacs )
+ history? ( sys-libs/readline )
+ virtual/perl-Pod-Parser
+ x11-libs/libXinerama
+ x11-libs/libXtst
+ xft? ( x11-libs/libXft )
+"
+DEPEND="
+ ${RDEPEND}
+ app-arch/xz-utils
+ virtual/pkgconfig
+"
+
+SITEFILE=50ratpoison-gentoo.el
+DOCS=( AUTHORS ChangeLog NEWS README TODO )
+
+src_prepare() {
+ epatch "${FILESDIR}/ratpoison.el-gentoo.patch"
+}
+
+src_configure() {
+ econf \
+ $(use_enable debug) \
+ $(use_enable history) \
+ $(use_with xft)
+}
+
+src_compile() {
+ emake CFLAGS="${CFLAGS}"
+ if use emacs; then
+ elisp-compile contrib/ratpoison.el || die "elisp-compile failed"
+ fi
+
+ if use sloppy; then
+ pushd contrib
+ $(tc-getCC) \
+ ${CFLAGS} \
+ ${LDFLAGS} \
+ -o sloppy{,.c} \
+ $( $(tc-getPKG_CONFIG) --libs x11) \
+ || die
+ fi
+}
+
+src_install() {
+ default
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/ratpoison.xsession ratpoison
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/${PN}.desktop
+
+ use sloppy && dobin contrib/sloppy
+
+ docinto example
+ dodoc contrib/{genrpbindings,split.sh} \
+ doc/{ipaq.ratpoisonrc,sample.ratpoisonrc}
+
+ rm -rf "${ED}/usr/share/"{doc/ratpoison,ratpoison}
+
+ if use emacs; then
+ elisp-install ${PN} contrib/ratpoison.*
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/x11-wm/ratpoison/ratpoison-9999.ebuild b/x11-wm/ratpoison/ratpoison-9999.ebuild
new file mode 100644
index 000000000000..699bdec4435f
--- /dev/null
+++ b/x11-wm/ratpoison/ratpoison-9999.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools elisp-common eutils git-r3 toolchain-funcs
+
+DESCRIPTION="an extremely light-weight and barebones wm modelled after screen"
+HOMEPAGE="http://www.nongnu.org/ratpoison/"
+EGIT_REPO_URI="git://git.savannah.nongnu.org/ratpoison.git"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE="debug emacs +history sloppy +xft"
+
+RDEPEND="
+ emacs? ( virtual/emacs )
+ history? ( sys-libs/readline )
+ virtual/perl-Pod-Parser
+ x11-libs/libXinerama
+ x11-libs/libXtst
+ xft? ( x11-libs/libXft )
+"
+DEPEND="
+ ${RDEPEND}
+ app-arch/xz-utils
+ virtual/pkgconfig
+"
+
+SITEFILE=50ratpoison-gentoo.el
+DOCS=( AUTHORS ChangeLog NEWS README TODO )
+
+src_prepare() {
+ epatch "${FILESDIR}/ratpoison.el-gentoo.patch"
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_enable debug) \
+ $(use_enable history) \
+ $(use_with xft) \
+ --without-electric-fence
+}
+
+src_compile() {
+ emake CFLAGS="${CFLAGS}"
+ if use emacs; then
+ elisp-compile contrib/ratpoison.el || die "elisp-compile failed"
+ fi
+
+ if use sloppy; then
+ pushd contrib
+ $(tc-getCC) \
+ ${CFLAGS} \
+ ${LDFLAGS} \
+ -o sloppy{,.c} \
+ $( $(tc-getPKG_CONFIG) --libs x11) \
+ || die
+ fi
+}
+
+src_install() {
+ default
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/ratpoison.xsession ratpoison
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/${PN}.desktop
+
+ use sloppy && dobin contrib/sloppy
+
+ docinto example
+ dodoc contrib/{genrpbindings,split.sh} \
+ doc/{ipaq.ratpoisonrc,sample.ratpoisonrc}
+
+ rm -rf "${ED}/usr/share/"{doc/ratpoison,ratpoison}
+
+ if use emacs; then
+ elisp-install ${PN} contrib/ratpoison.*
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/x11-wm/sawfish/Manifest b/x11-wm/sawfish/Manifest
new file mode 100644
index 000000000000..2a2817dda252
--- /dev/null
+++ b/x11-wm/sawfish/Manifest
@@ -0,0 +1 @@
+DIST sawfish-1.9.1.tar.xz 2616612 SHA256 c1751abf46a52dead8a50fa4b91c09ff0540cb9cc988c76ebfea0bee9edd0618 SHA512 243a818e2cc2546c040f33fbc076bbcc4033b88f0b4be573f9daa80b2dcfd8d9dc97384d236b9b71d6efe08ad39bfd3f3f31b5c055b9b268418efb7668e27a42 WHIRLPOOL 9293221e4a1c7cfddbf5dd619ac9fcd6e8da02723b651e4b62f9baa9e7d7c66d6f0967a960b097c6d9c9f7b7b79de94070733b0e80a1954d9ce477a6187d89fc
diff --git a/x11-wm/sawfish/files/50sawfish-gentoo.el b/x11-wm/sawfish/files/50sawfish-gentoo.el
new file mode 100644
index 000000000000..d1b6006e6307
--- /dev/null
+++ b/x11-wm/sawfish/files/50sawfish-gentoo.el
@@ -0,0 +1,7 @@
+(add-to-list 'load-path "@SITELISP@")
+(autoload 'sawfish-mode "sawfish" nil t)
+(autoload 'sawfish-interaction "sawfish" nil t)
+(autoload 'sawfish-console "sawfish" nil t)
+(add-to-list 'auto-mode-alist '("\\.sawfishrc\\'" . sawfish-mode))
+(add-to-list 'auto-mode-alist '("\\.jl\\'" . sawfish-mode))
+(add-to-list 'auto-mode-alist '("\\.sawfish/rc\\'" . sawfish-mode))
diff --git a/x11-wm/sawfish/files/sawfish-1.9.1-firefox.patch b/x11-wm/sawfish/files/sawfish-1.9.1-firefox.patch
new file mode 100644
index 000000000000..6fb27bb820cc
--- /dev/null
+++ b/x11-wm/sawfish/files/sawfish-1.9.1-firefox.patch
@@ -0,0 +1,20 @@
+X-Git-Url: http://git.tuxfamily.org/sawfish/main.git?p=sawfish%2Fmain.git;p=sawfish%2Fmain.git;a=blobdiff_plain;f=src%2Fwindows.c;h=053b95a9933b04a99301b300a5477e2ce3329cbd;hp=c6117e778ad157f9868c431efa934964b88897fd;hb=798c6992cc41f5ca7ec1bd4bd74d721a59820897;hpb=ec807ed20eecb401c3e11b3b04d375fc848ca4c1
+
+diff --git a/src/windows.c b/src/windows.c
+index c6117e7..053b95a 100644
+--- a/src/windows.c
++++ b/src/windows.c
+@@ -1297,6 +1297,13 @@ associated with WINDOW. Possible keys in the alist are `min-height',
+ hints = &VWIN(win)->hints;
+ flags = hints->flags;
+
++ /* workaround stuff like Firefox 17 that
++ * has enormous max-width/maxh-height */
++ if (hints->max_width >= 32767)
++ hints->max_width = 32767;
++ if (hints->max_height >= 32767)
++ hints->max_height = 32767;
++
+ /* Some sanity checking */
+ if ((flags & PMinSize)
+ && (hints->min_width < 0 || hints->min_height < 0))
diff --git a/x11-wm/sawfish/metadata.xml b/x11-wm/sawfish/metadata.xml
new file mode 100644
index 000000000000..cd6c593dee3c
--- /dev/null
+++ b/x11-wm/sawfish/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ <description>This package lacks a primary herd or maintainer.</description>
+</maintainer>
+<maintainer>
+ <email>emacs@gentoo.org</email>
+ <description>Components installed with USE=emacs.
+ Do not assign for anything else.</description>
+</maintainer>
+</pkgmetadata>
diff --git a/x11-wm/sawfish/sawfish-1.9.1-r2.ebuild b/x11-wm/sawfish/sawfish-1.9.1-r2.ebuild
new file mode 100644
index 000000000000..a14c799424a2
--- /dev/null
+++ b/x11-wm/sawfish/sawfish-1.9.1-r2.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils elisp-common
+
+DESCRIPTION="Extensible window manager using a Lisp-based scripting language"
+HOMEPAGE="http://sawfish.wikia.com/"
+SRC_URI="http://download.tuxfamily.org/sawfish/${P}.tar.xz"
+
+LICENSE="GPL-2 Artistic-2"
+SLOT="0"
+KEYWORDS="alpha amd64 ia64 ppc ~ppc64 ~sh sparc x86 ~x86-fbsd"
+IUSE="emacs nls xinerama"
+
+RDEPEND="emacs? ( virtual/emacs !app-emacs/sawfish )
+ >=dev-libs/librep-0.92.1
+ >=x11-libs/rep-gtk-0.90.7
+ x11-libs/pangox-compat
+ >=x11-libs/gtk+-2.24.0:2
+ x11-libs/libXtst
+ nls? ( sys-devel/gettext )
+ xinerama? ( x11-libs/libXinerama )"
+DEPEND="${RDEPEND}
+ app-arch/xz-utils
+ virtual/pkgconfig"
+
+src_prepare() {
+ # Fix firefox resizing problems, bug #462016
+ epatch "${FILESDIR}/${P}-firefox.patch"
+}
+
+src_configure() {
+ set -- \
+ $(use_with xinerama) \
+ --with-gdk-pixbuf \
+ --disable-static
+
+ if ! use nls; then
+ # Use a space because configure script reads --enable-linguas="" as
+ # "install everything"
+ # Don't use --disable-linguas, because that means --enable-linguas="no",
+ # which means "install Norwegian translations"
+ set -- "$@" --enable-linguas=" "
+ elif [[ "${LINGUAS+set}" == "set" ]]; then
+ strip-linguas -i po
+ set -- "$@" --enable-linguas=" ${LINGUAS} "
+ else
+ set -- "$@" --enable-linguas=""
+ fi
+
+ econf "$@"
+}
+
+src_compile() {
+ emake
+ use emacs && elisp-compile sawfish.el
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ prune_libtool_files --modules
+ dodoc AUTHORS ChangeLog DOC FAQ NEWS OPTIONS README README.IMPORTANT TODO
+
+ if use emacs; then
+ elisp-install ${PN} sawfish.{el,elc}
+ elisp-site-file-install "${FILESDIR}"/50${PN}-gentoo.el
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/x11-wm/selectwm/Manifest b/x11-wm/selectwm/Manifest
new file mode 100644
index 000000000000..f8259b3f895a
--- /dev/null
+++ b/x11-wm/selectwm/Manifest
@@ -0,0 +1 @@
+DIST selectwm-0.4.1.tar.bz2 151454 SHA256 5ba49d5303f6613b829c88098b29b78e3d555d3a69a5c88a73aa4deaf82729a4 SHA512 3ddc4c1560d317ecb6e8e041d63415d16d31b67b4651d9e33fbe3e76a63754b78a86d332077ec091317e985dbedd903c9fdca46eb7cb650ad693039b8f4ab1ea WHIRLPOOL 1b953f9d2ce3a0b83d1178929b7a5087beef72d4eca71aa15445eae7bdfc771939b066c5899f939045ef917f9481e033c9117d051db3f990fb8340ed2331b7b2
diff --git a/x11-wm/selectwm/files/selectwm-0.4.1-enable-deprecated-gtk.patch b/x11-wm/selectwm/files/selectwm-0.4.1-enable-deprecated-gtk.patch
new file mode 100644
index 000000000000..df7f9e437b45
--- /dev/null
+++ b/x11-wm/selectwm/files/selectwm-0.4.1-enable-deprecated-gtk.patch
@@ -0,0 +1,11 @@
+--- selectwm-0.4.1.orig/src/define.h 2007-09-30 21:48:25.000000000 +0200
++++ selectwm-0.4.1/src/define.h 2007-09-30 22:01:53.000000000 +0200
+@@ -1,8 +1,5 @@
+ #include "config.h"
+
+-#define GTK_DISABLE_DEPRECATED
+-#define G_DISABLE_DEPRECATED
+-
+ #ifdef ENABLE_NLS
+ # include <libintl.h>
+ # undef _
diff --git a/x11-wm/selectwm/files/selectwm-0.4.1-glibc-2.10.patch b/x11-wm/selectwm/files/selectwm-0.4.1-glibc-2.10.patch
new file mode 100644
index 000000000000..4353d5e36662
--- /dev/null
+++ b/x11-wm/selectwm/files/selectwm-0.4.1-glibc-2.10.patch
@@ -0,0 +1,21 @@
+diff -Naurp selectwm-0.4.1-orig/src/options.c selectwm-0.4.1/src/options.c
+--- selectwm-0.4.1-orig/src/options.c 2009-07-26 14:46:44.092880624 -0600
++++ selectwm-0.4.1/src/options.c 2009-07-26 14:46:11.484940363 -0600
+@@ -32,7 +32,7 @@
+ #include "miscui.h"
+ #include "modify.h"
+
+-static GString *getline (FILE *fichier) {
++static GString *selectwm_getline (FILE *fichier) {
+ GString *temp;
+ gchar buf[128];
+
+@@ -64,7 +64,7 @@ static gint read_config_file (config *se
+ }
+ buf = g_string_new ("");
+ while (!feof (config)) {
+- buf = getline (config);
++ buf = selectwm_getline (config);
+
+ if (buf->len > 0 && buf->str[0] != '#') {
+ if (g_strrstr (buf->str, ":")) {
diff --git a/x11-wm/selectwm/files/selectwm-0.4.1-nostrip.patch b/x11-wm/selectwm/files/selectwm-0.4.1-nostrip.patch
new file mode 100644
index 000000000000..d5300c9f94a7
--- /dev/null
+++ b/x11-wm/selectwm/files/selectwm-0.4.1-nostrip.patch
@@ -0,0 +1,15 @@
+Respect CFLAGS, don't strip binaries
+
+http://bugs.gentoo.org/show_bug.cgi?id=252124
+
+--- src/Makefile.am
++++ src/Makefile.am
+@@ -10,5 +10,6 @@
+ modify.c modify.h \
+ misc.h define.h
+
+-LIBS = @GTK_LIBS@
+-AM_CFLAGS = -s -O2 -Wall @GTK_CFLAGS@ -DLOCALEDIR=\"$(datadir)/locale\"
++selectwm_LDADD = @GTK_LIBS@
++selectwm_CFLAGS = @GTK_CFLAGS@
++selectwm_CPPFLAGS = -DLOCALEDIR=\"$(datadir)/locale\"
diff --git a/x11-wm/selectwm/metadata.xml b/x11-wm/selectwm/metadata.xml
new file mode 100644
index 000000000000..4538a68724a6
--- /dev/null
+++ b/x11-wm/selectwm/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>maintainer-needed@gentoo.org</email></maintainer>
+</pkgmetadata>
diff --git a/x11-wm/selectwm/selectwm-0.4.1.ebuild b/x11-wm/selectwm/selectwm-0.4.1.ebuild
new file mode 100644
index 000000000000..d7f4c2ef3faf
--- /dev/null
+++ b/x11-wm/selectwm/selectwm-0.4.1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils
+
+DESCRIPTION="window manager selector tool"
+HOMEPAGE="http://ordiluc.net/selectwm"
+SRC_URI="http://ordiluc.net/selectwm/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="2"
+KEYWORDS="amd64 ppc sparc x86 ~x86-fbsd"
+IUSE="nls"
+
+RDEPEND="x11-libs/gtk+:2
+ dev-libs/glib:2"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-enable-deprecated-gtk.patch \
+ "${FILESDIR}"/${P}-glibc-2.10.patch \
+ "${FILESDIR}"/${P}-nostrip.patch
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --program-suffix=2 \
+ $(use_enable nls)
+}
+
+src_install () {
+ emake DESTDIR="${D}" install
+ dodoc AUTHORS README sample.xinitrc
+}
diff --git a/x11-wm/sithwm/Manifest b/x11-wm/sithwm/Manifest
new file mode 100644
index 000000000000..5a9c93d2c651
--- /dev/null
+++ b/x11-wm/sithwm/Manifest
@@ -0,0 +1 @@
+DIST sithwm-1.2.3.tgz 29976 SHA256 6369e0429d0cc52eae6a9a11e2339f300306ed8754b5ac5f8be9e8fc41950f1f SHA512 12b57d28da2a5b365b1c165ba6904d901990e69950986cc7be285060a58ccdc32edc4bd60a63d2eba3f6f7f695d461e424bce23542c18a13afd5aab2e91067dd WHIRLPOOL ffefa96071e2fb0cf45f923ae5a8e9521ca6bd1b8d04d6cd0537393441fb2fa0daa9a24448e150e65d8243d5cf58856ed90cca473294a09ea49ea7693a7d3ced
diff --git a/x11-wm/sithwm/files/sithwm-1.2.3-warnings.patch b/x11-wm/sithwm/files/sithwm-1.2.3-warnings.patch
new file mode 100644
index 000000000000..c2653dcd8db9
--- /dev/null
+++ b/x11-wm/sithwm/files/sithwm-1.2.3-warnings.patch
@@ -0,0 +1,34 @@
+--- sithwm-1.2.3/menu.c
++++ sithwm-1.2.3/menu.c
+@@ -355,7 +355,7 @@
+ int freem = 1;
+ int freestrs = 1;
+ struct area a;
+- unsigned int mask;
++ unsigned int mask = NoValue;
+ char*p=global_buffer;
+ char ent_type[3] = "\0";
+ for (;;) {
+--- sithwm-1.2.3/misc.c
++++ sithwm-1.2.3/misc.c
+@@ -21,7 +21,7 @@
+ char *dot = strchr(colon, '.');
+ if (!dot)
+ dot = colon + strlen(colon);
+- snprintf(dot, 5, ".%d", current_screen-screens);
++ snprintf(dot, 5, ".%ld", current_screen-screens);
+ putenv(ebuf);
+ }
+ snprintf(global_buffer, sizeof global_buffer, "%s&", command);
+--- sithwm-1.2.3/screen.c
++++ sithwm-1.2.3/screen.c
+@@ -146,6 +146,9 @@
+ }break;
+ default:
+ iwin.w = 0;
++ iwin.h = 0;
++ iwin.pos.x = 0;
++ iwin.pos.y = 0;
+ }
+
+ int stackwidth = opt_popup_stack_width;
diff --git a/x11-wm/sithwm/metadata.xml b/x11-wm/sithwm/metadata.xml
new file mode 100644
index 000000000000..efe9e6ecf5e6
--- /dev/null
+++ b/x11-wm/sithwm/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+<email>xmw@gentoo.org</email>
+<name>Michael Weber</name>
+</maintainer>
+<upstream>
+ <remote-id type="sourceforge">sithwm</remote-id>
+ <bugs-to>http://sourceforge.net/tracker/?group_id=175787</bugs-to>
+</upstream>
+</pkgmetadata>
+
diff --git a/x11-wm/sithwm/sithwm-1.2.3.ebuild b/x11-wm/sithwm/sithwm-1.2.3.ebuild
new file mode 100644
index 000000000000..158970cd2b3e
--- /dev/null
+++ b/x11-wm/sithwm/sithwm-1.2.3.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Minimalist Window Manager for X"
+HOMEPAGE="http://sithwm.darkside.no/"
+SRC_URI="http://sithwm.darkside.no/sn/sithwm-1.2.3.tgz"
+
+LICENSE="GPL-2+ MIT 9wm"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="x11-libs/libX11"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-warnings.patch
+ sed -e 's|install -s|install|g' \
+ -i Makefile || die
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
diff --git a/x11-wm/spectrwm/Manifest b/x11-wm/spectrwm/Manifest
new file mode 100644
index 000000000000..b6cd7305a19e
--- /dev/null
+++ b/x11-wm/spectrwm/Manifest
@@ -0,0 +1,2 @@
+DIST spectrwm-2.6.2.tgz 124215 SHA256 eb9b33ee05b0625d59607f886d9ba7f0723bd863b503d66bdb592f5461c59459 SHA512 f1962df679ca07ca7d8c68a2d0b88331eda5c7cd35ecf1a5a63687984c1c67ef48fffb4e29d273fb1ccef9c9bb77a5ab12a09ef27b1d97abdc87dc20f38717f5 WHIRLPOOL 9bddfbb242c3ebcd79aea2730406783e86ec2669601d47c26918f467935df3c64ad1055376e4f63aaf376771d3f89ebc51eea6004d188da617c85f35baf9caee
+DIST spectrwm-2.7.2.tgz 132554 SHA256 b56cffa01ee2c58515350c1be1940140286fd18778659c6f5ada4595319f97cb SHA512 cebb0e42566125933bf2c4c9200765d360bb572fd953c510ad39e7abcf9cc507e61420441234fb1bb44d06d28526ba6c594272c173a04181d2c6798e404b7421 WHIRLPOOL 5ab24d2866d6a252c03a72fae3e0dd914f6c2041185088da5beb4c7a4a0ee5ec0c3b55cff32bef5f10f159ae1a5e66a6a217a3d67cba2d17ed324145a05391c7
diff --git a/x11-wm/spectrwm/files/spectrwm-2.0.2-makefile.patch b/x11-wm/spectrwm/files/spectrwm-2.0.2-makefile.patch
new file mode 100644
index 000000000000..6fa2d35bcc68
--- /dev/null
+++ b/x11-wm/spectrwm/files/spectrwm-2.0.2-makefile.patch
@@ -0,0 +1,23 @@
+--- spectrwm-2.0.2/linux/Makefile
++++ spectrwm-2.0.2/linux/Makefile
+@@ -1,5 +1,5 @@
+-CFLAGS+= -Wall -Wextra -Wshadow -g -D_GNU_SOURCE -I. -I/usr/include/freetype2
+-CFLAGS+= -DSWM_LIB=\"$(LIBDIR)/libswmhack.so.$(LVERS)\"
++CFLAGS+= -Wall -Wextra -Wshadow -D_GNU_SOURCE -I. -I/usr/include/freetype2
++CFLAGS+= -DSWM_LIB=\"libswmhack.so.$(LVERS)\"
+ LDADD+= -lX11 -lX11-xcb -lxcb -lxcb-icccm -lxcb-randr -lxcb-keysyms -lxcb-util -lxcb-xtest -lXft -lXcursor
+
+ PREFIX?= /usr/local
+@@ -29,10 +29,10 @@
+ $(CC) $(LDFLAGS) -o $@ $+ $(LDADD)
+
+ %.so: %.c
+- $(CC) $(CFLAGS) -c -fpic -DPIC $+ -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) -c -fpic -DPIC $+ -o $@
+
+ libswmhack.so.$(LVERS): swm_hack.so
+- $(CC) -shared -fpic -o libswmhack.so.$(LVERS) swm_hack.so $(LDADD)
++ $(CC) $(LDFLAGS) -Wl,-soname,$@ -shared -fpic -o libswmhack.so.$(LVERS) swm_hack.so $(LDADD)
+
+ install: all
+ install -m 755 -d $(DESTDIR)$(BINDIR)
diff --git a/x11-wm/spectrwm/files/spectrwm-2.1.0-makefile.patch b/x11-wm/spectrwm/files/spectrwm-2.1.0-makefile.patch
new file mode 100644
index 000000000000..97a968921fd0
--- /dev/null
+++ b/x11-wm/spectrwm/files/spectrwm-2.1.0-makefile.patch
@@ -0,0 +1,23 @@
+--- spectrwm-2.1.0/linux/Makefile
++++ spectrwm-2.1.0/linux/Makefile
+@@ -1,5 +1,5 @@
+-CFLAGS+= -std=c99 -Wall -Wextra -Wmissing-prototypes -Wshadow -g -D_GNU_SOURCE -I. -I/usr/include/freetype2
+-CFLAGS+= -DSWM_LIB=\"$(LIBDIR)/libswmhack.so.$(LVERS)\"
++CFLAGS+= -std=c99 -Wall -Wextra -Wmissing-prototypes -Wshadow -D_GNU_SOURCE -I. -I/usr/include/freetype2
++CFLAGS+= -DSWM_LIB=\"libswmhack.so.$(LVERS)\"
+ LDADD+= -lX11 -lX11-xcb -lxcb -lxcb-icccm -lxcb-randr -lxcb-keysyms -lxcb-util -lxcb-xtest -lXft -lXcursor
+
+ PREFIX?= /usr/local
+@@ -29,10 +29,10 @@
+ $(CC) $(LDFLAGS) -o $@ $+ $(LDADD)
+
+ %.so: %.c
+- $(CC) $(CFLAGS) -c -fpic -DPIC $+ -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) -c -fpic -DPIC $+ -o $@
+
+ libswmhack.so.$(LVERS): swm_hack.so
+- $(CC) -shared -fpic -o libswmhack.so.$(LVERS) swm_hack.so $(LDADD)
++ $(CC) $(LDFLAGS) -Wl,-soname,$@ -shared -fpic -o libswmhack.so.$(LVERS) swm_hack.so $(LDADD)
+
+ install: all
+ install -m 755 -d $(DESTDIR)$(BINDIR)
diff --git a/x11-wm/spectrwm/files/spectrwm-2.3.0-Makefile.patch b/x11-wm/spectrwm/files/spectrwm-2.3.0-Makefile.patch
new file mode 100644
index 000000000000..2b04953ea9c4
--- /dev/null
+++ b/x11-wm/spectrwm/files/spectrwm-2.3.0-Makefile.patch
@@ -0,0 +1,36 @@
+--- spectrwm-2.3.0/linux/Makefile
++++ spectrwm-2.3.0/linux/Makefile
+@@ -1,5 +1,5 @@
+-CFLAGS+= -std=c99 -Wall -Wextra -Wmissing-prototypes -Wshadow -g -D_GNU_SOURCE -I. -I/usr/include/freetype2
+-CFLAGS+= -DSWM_LIB=\"$(LIBDIR)/libswmhack.so.$(LVERS)\"
++CFLAGS+= -std=c99 -Wall -Wextra -Wmissing-prototypes -Wshadow -D_GNU_SOURCE -I. -I/usr/include/freetype2
++CFLAGS+= -DSWM_LIB=\"libswmhack.so.$(LVERS)\"
+ LDADD+= -lX11 -lX11-xcb -lxcb -lxcb-icccm -lxcb-randr -lxcb-keysyms -lxcb-util -lxcb-xtest -lXft -lXcursor
+
+ PREFIX?= /usr/local
+@@ -29,10 +29,10 @@
+ $(CC) $(LDFLAGS) -o $@ $+ $(LDADD)
+
+ %.so: %.c
+- $(CC) $(CFLAGS) -c -fpic -DPIC $+ -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) -c -fpic -DPIC $+ -o $@
+
+ libswmhack.so.$(LVERS): swm_hack.so
+- $(CC) -shared -fpic -o libswmhack.so.$(LVERS) swm_hack.so $(LDADD)
++ $(CC) $(LDFLAGS) -Wl,-soname,$@ -shared -fpic -o libswmhack.so.$(LVERS) swm_hack.so $(LDADD)
+
+ install: all
+ install -m 755 -d $(DESTDIR)$(BINDIR)
+@@ -45,9 +45,9 @@
+ install -m 644 ../spectrwm_it.1 $(DESTDIR)$(MANDIR)/man1/spectrwm_it.1
+ install -m 644 ../spectrwm_pt.1 $(DESTDIR)$(MANDIR)/man1/spectrwm_pt.1
+ install -m 644 ../spectrwm_ru.1 $(DESTDIR)$(MANDIR)/man1/spectrwm_ru.1
+- ln -sf $(BINDIR)/spectrwm $(DESTDIR)$(BINDIR)/scrotwm
+- ln -sf $(LIBDIR)/libswmhack.so.0.0 $(DESTDIR)$(LIBDIR)/libswmhack.so.0
+- ln -sf $(LIBDIR)/libswmhack.so.0.0 $(DESTDIR)$(LIBDIR)/libswmhack.so
++ ln -sf spectrwm $(DESTDIR)$(BINDIR)/scrotwm
++ ln -sf libswmhack.so.0.0 $(DESTDIR)$(LIBDIR)/libswmhack.so.0
++ ln -sf libswmhack.so.0.0 $(DESTDIR)$(LIBDIR)/libswmhack.so
+
+ clean:
+ rm -f spectrwm *.o *.so libswmhack.so.* spectrwm.c swm_hack.c version.h
diff --git a/x11-wm/spectrwm/files/spectrwm-2.4.0-Makefile.patch b/x11-wm/spectrwm/files/spectrwm-2.4.0-Makefile.patch
new file mode 100644
index 000000000000..405a6a365978
--- /dev/null
+++ b/x11-wm/spectrwm/files/spectrwm-2.4.0-Makefile.patch
@@ -0,0 +1,17 @@
+--- spectrwm-2.4.0/linux/Makefile
++++ spectrwm-2.4.0/linux/Makefile
+@@ -1,4 +1,4 @@
+-CFLAGS+= -std=c99 -Wmissing-prototypes -Wall -Wextra -Wshadow -Wno-uninitialized -g
++CFLAGS+= -std=c99 -Wmissing-prototypes -Wall -Wextra -Wshadow -Wno-uninitialized
+ CFLAGS+= -D_GNU_SOURCE -I. -I/usr/include/freetype2 -DSWM_LIB=\"libswmhack.so.$(LVERS)\"
+ LDADD+= -lX11 -lX11-xcb -lxcb -lxcb-icccm -lxcb-randr -lxcb-keysyms -lxcb-util -lxcb-xtest -lXft -lXcursor
+
+@@ -29,7 +29,7 @@
+ $(CC) $(LDFLAGS) -o $@ $+ $(LDADD)
+
+ %.so: %.c
+- $(CC) $(CFLAGS) -c -fpic -DPIC $+ -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) -c -fpic -DPIC $+ -o $@
+
+ libswmhack.so.$(LVERS): swm_hack.so
+ $(CC) $(LDFLAGS) -Wl,-soname,$@ -shared -fpic -o libswmhack.so.$(LVERS) swm_hack.so $(LDADD)
diff --git a/x11-wm/spectrwm/files/spectrwm-2.5.0-Makefile.patch b/x11-wm/spectrwm/files/spectrwm-2.5.0-Makefile.patch
new file mode 100644
index 000000000000..2748651ee60a
--- /dev/null
+++ b/x11-wm/spectrwm/files/spectrwm-2.5.0-Makefile.patch
@@ -0,0 +1,20 @@
+--- spectrwm-2.5.0/linux/Makefile
++++ spectrwm-2.5.0/linux/Makefile
+@@ -5,7 +5,7 @@
+
+ LVERS= $(shell . ../lib/shlib_version; echo $$major.$$minor)
+
+-CFLAGS+= -std=c99 -Wmissing-prototypes -Wall -Wextra -Wshadow -Wno-uninitialized -g
++CFLAGS+= -std=c99 -Wmissing-prototypes -Wall -Wextra -Wshadow -Wno-uninitialized
+ CFLAGS+= -D_GNU_SOURCE -I. -I/usr/include/freetype2 -DSWM_LIB=\"$(LIBDIR)/libswmhack.so.$(LVERS)\"
+ LDADD+= -lX11 -lX11-xcb -lxcb -lxcb-icccm -lxcb-randr -lxcb-keysyms -lxcb-util -lxcb-xtest -lXft -lXcursor
+
+@@ -29,7 +29,7 @@
+ $(CC) $(LDFLAGS) -o $@ $+ $(LDADD)
+
+ %.so: %.c
+- $(CC) $(CFLAGS) -c -fpic -DPIC $+ -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) -c -fpic -DPIC $+ -o $@
+
+ libswmhack.so.$(LVERS): swm_hack.so
+ $(CC) $(LDFLAGS) -Wl,-soname,$@ -shared -fpic -o libswmhack.so.$(LVERS) swm_hack.so $(LDADD)
diff --git a/x11-wm/spectrwm/files/spectrwm-2.6.2-Makefile.patch b/x11-wm/spectrwm/files/spectrwm-2.6.2-Makefile.patch
new file mode 100644
index 000000000000..e380b60fdf13
--- /dev/null
+++ b/x11-wm/spectrwm/files/spectrwm-2.6.2-Makefile.patch
@@ -0,0 +1,11 @@
+--- spectrwm-2.6.2/linux/Makefile
++++ spectrwm-2.6.2/linux/Makefile
+@@ -9,7 +9,7 @@
+ LIBVERSION = $(shell . $(CURDIR)/../lib/shlib_version; echo $$major.$$minor)
+ LIBMAJORVERSION = $(shell . $(CURDIR)/../lib/shlib_version; echo $$major)
+
+-MAINT_CFLAGS = -std=c99 -Wmissing-prototypes -Wall -Wextra -Wshadow -Wno-uninitialized -g
++MAINT_CFLAGS = -std=c99 -Wmissing-prototypes -Wall -Wextra -Wshadow -Wno-uninitialized
+ MAINT_CPPFLAGS = -D_GNU_SOURCE -I. -I/usr/include/freetype2 -DSWM_LIB=\"$(LIBDIR)/libswmhack.so.$(LIBVERSION)\"
+ MAINT_LDLIBS = -lX11 -lX11-xcb -lxcb -lxcb-icccm -lxcb-randr -lxcb-keysyms -lxcb-util -lxcb-xtest -lXft -lXcursor
+
diff --git a/x11-wm/spectrwm/files/spectrwm.desktop b/x11-wm/spectrwm/files/spectrwm.desktop
new file mode 100644
index 000000000000..ca9a5b6337e4
--- /dev/null
+++ b/x11-wm/spectrwm/files/spectrwm.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=spectrwm
+Comment=A lighweight tiling window manager
+Exec=/etc/X11/Sessions/spectrwm
+TryExec=spectrwm
+Icon=
+Type=Application
diff --git a/x11-wm/spectrwm/metadata.xml b/x11-wm/spectrwm/metadata.xml
new file mode 100644
index 000000000000..59acc2cc580e
--- /dev/null
+++ b/x11-wm/spectrwm/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+<email>xmw@gentoo.org</email>
+<name>Michael Weber</name>
+</maintainer>
+</pkgmetadata>
+
diff --git a/x11-wm/spectrwm/spectrwm-2.6.2.ebuild b/x11-wm/spectrwm/spectrwm-2.6.2.ebuild
new file mode 100644
index 000000000000..575056749bac
--- /dev/null
+++ b/x11-wm/spectrwm/spectrwm-2.6.2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils multilib toolchain-funcs
+
+DESCRIPTION="Small dynamic tiling window manager for X11"
+HOMEPAGE="https://opensource.conformal.com/wiki/spectrwm"
+SRC_URI="http://opensource.conformal.com/snapshots/${PN}/${P}.tgz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RDEPEND="x11-misc/dmenu"
+DEPEND="${DEPEND}
+ x11-libs/libX11
+ x11-libs/libXcursor
+ x11-libs/libXrandr
+ x11-libs/libXtst
+ x11-libs/xcb-util
+ !x11-wm/scrotwm"
+
+S=${WORKDIR}/${P}/linux
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-Makefile.patch
+ tc-export CC
+}
+
+src_install() {
+ emake PREFIX="${D}"/usr LIBDIR="${D}usr/$(get_libdir)" install
+
+ cd "${WORKDIR}"/${P} || die
+
+ insinto /etc
+ doins ${PN}.conf
+ dodoc ${PN}_*.conf {initscreen,screenshot}.sh
+
+ elog "Example keyboard config and helpful scripts can be found"
+ elog "in ${ROOT}usr/share/doc/${PF}"
+}
diff --git a/x11-wm/spectrwm/spectrwm-2.7.2.ebuild b/x11-wm/spectrwm/spectrwm-2.7.2.ebuild
new file mode 100644
index 000000000000..2c3cdd313c19
--- /dev/null
+++ b/x11-wm/spectrwm/spectrwm-2.7.2.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib toolchain-funcs
+
+DESCRIPTION="Small dynamic tiling window manager for X11"
+HOMEPAGE="https://opensource.conformal.com/wiki/spectrwm"
+SRC_URI="http://opensource.conformal.com/snapshots/${PN}/${P}.tgz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="x11-misc/dmenu"
+DEPEND="${DEPEND}
+ x11-libs/libX11
+ x11-libs/libXcursor
+ x11-libs/libXrandr
+ x11-libs/libXtst
+ x11-libs/xcb-util
+ !x11-wm/scrotwm"
+
+S=${WORKDIR}/${P}/linux
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2.6.2-Makefile.patch
+ tc-export CC
+}
+
+src_install() {
+ emake PREFIX="${D}"/usr LIBDIR="${D}usr/$(get_libdir)" install
+
+ cd "${WORKDIR}"/${P} || die
+
+ insinto /etc
+ doins ${PN}.conf
+ dodoc ${PN}_*.conf {initscreen,screenshot}.sh
+
+ make_session_desktop ${PN} ${PN}
+
+ elog "Example keyboard config and helpful scripts can be found"
+ elog "in ${ROOT}usr/share/doc/${PF}"
+}
diff --git a/x11-wm/stumpwm/Manifest b/x11-wm/stumpwm/Manifest
new file mode 100644
index 000000000000..5f1e6b28b51a
--- /dev/null
+++ b/x11-wm/stumpwm/Manifest
@@ -0,0 +1 @@
+DIST stumpwm-0.9.9.tar.gz 189516 SHA256 7dfcb31f3c248a454b892ae98a186f43681f6e8e62b7c77d7858b34f645c0abb SHA512 b114f0dc9091e6704acd4f6d16183b15d956b0f27abec800bca8cfdf966636e7e96c036678fe9c2ca9266d794eabb48c4d66dd62c52c1d26e42ab54abb7ff05b WHIRLPOOL 599bed139c5b058c61b89f01750179f9d9dd5db5fa65737e06f65990c96547042331845aa7d8ce137b0a9357c6e063b6663f7c8c66dab3e74553abedd56b6736
diff --git a/x11-wm/stumpwm/files/70stumpwm-gentoo.el b/x11-wm/stumpwm/files/70stumpwm-gentoo.el
new file mode 100644
index 000000000000..c07bdf2de499
--- /dev/null
+++ b/x11-wm/stumpwm/files/70stumpwm-gentoo.el
@@ -0,0 +1,2 @@
+(add-to-list 'load-path "@SITELISP@")
+(autoload 'stumpwm-mode "stumpwm-mode" nil t)
diff --git a/x11-wm/stumpwm/files/README.Gentoo b/x11-wm/stumpwm/files/README.Gentoo
new file mode 100644
index 000000000000..7277305dcda1
--- /dev/null
+++ b/x11-wm/stumpwm/files/README.Gentoo
@@ -0,0 +1,56 @@
+
+This file is installed in /usr/share/doc/stumpwm-cvs-*/README.Gentoo.gz
+
+Stumpwm notes for Gentoo
+------------------------
+
+As always with CVS ebuilds, DO NOT report problems to upstream.
+Always report problems to the Gentoo Bugzilla at
+http://bugs.gentoo.org/.
+
+This is a live CVS port of Stumpwm therefore every time you emerge
+x11-wm/stumpwm-cvs you will be installing the most recent Stumpwm.
+You may not always get a working Stumpwm. The ebuild supports setting
+ECVS_BRANCH from outside the ebuild so you can select Stumpwm CVS
+source from the past.
+
+Starting Stumpwm
+----------------
+
+For the moment, actually starting Stumpwm is left as an exercise for
+the user. Some users may prefer to load SLIME (via SWANK) support
+into the image with Stumpwm and some users may prefer not to.
+Deciding on SLIME TCP port numbers is also a user decision. Users may
+wish to experiment with Stumpwm in different Common Lisp
+implementations or just use a particular implementation.
+
+Here are some hints to get you started:
+
+ (asdf:oos 'asdf:load-op :stumpwm)
+
+Start a SLIME listener:
+
+ (asdf:oos 'asdf:load-op :swank)
+ (swank:create-swank-server 4005 :spawn)
+
+Then you can connect your Emacs to the Stumpwm image later using the
+following from Emacs:
+
+ M-x slime-connect RET 127.0.0.1 RET 4005 RET
+
+Isn't SLIME wonderful?. You might consider app-misc/detachtty or
+app-misc/screen for recovering the REPL if not using SLIME.
+
+Start Stumpwm:
+
+ (stumpwm:stumpwm ":0")
+
+You might also consider dev-lisp/cl-launch which is an excellent way
+to wrap up Common Lisp systems into a single, portable shell script.
+For example, the following creates a ~/bin/mystumpwm script which will
+try to load the stumpwm system definition into SBCL. If that fails,
+it will try CLISP:
+
+ cl-launch --output ~/bin/mystumpwm --lisp "sbcl clisp" \
+ --system stumpwm --init '(stumpwm:stumpwm ":0")'
+
diff --git a/x11-wm/stumpwm/metadata.xml b/x11-wm/stumpwm/metadata.xml
new file mode 100644
index 000000000000..9b985df13ff0
--- /dev/null
+++ b/x11-wm/stumpwm/metadata.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>nimiux@gentoo.org</email>
+ <name>Chema Alonso</name>
+</maintainer>
+<longdescription>
+ Stumpwm is a tiling, keyboard driven X11 Window Manager written entirely in Common Lisp.
+
+ If you're tired of flipping through themes like channel-surfing, and going from one perfect-except-for-just-one-thing
+ window manager to another even-more-broken-in-some-other-way then perhaps Stumpwm can help.
+
+ Stumpwm attempts to be customizable yet visually minimal. There are no window decorations, no icons, and no buttons.
+ It does have various hooks to attach your personal customizations, and variables to tweak.
+
+ * Hack the good hack
+ * debug your good hack
+ * customize your window manager
+
+ while it's running. That's right. With a 100% Common Lisp window manager there's no stopping the hacks. Just re-eval and GO!
+</longdescription>
+<use>
+ <flag name="doc">Include documentation</flag>
+ <flag name="emacs">Add support for GNU Emacs</flag>
+ <flag name="clisp">Use CLISP for the runtime</flag>
+ <flag name="ecl">Use SCL for the runtime</flag>
+ <flag name="sbcl">Use SBCL for the runtime</flag>
+</use>
+</pkgmetadata>
diff --git a/x11-wm/stumpwm/stumpwm-0.9.9.ebuild b/x11-wm/stumpwm/stumpwm-0.9.9.ebuild
new file mode 100644
index 000000000000..5bb5608619a2
--- /dev/null
+++ b/x11-wm/stumpwm/stumpwm-0.9.9.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit common-lisp-3 eutils elisp-common autotools
+
+DESCRIPTION="Stumpwm is a tiling, keyboard driven X11 Window Manager written entirely in Common Lisp."
+HOMEPAGE="http://www.nongnu.org/stumpwm/"
+SRC_URI="http://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc emacs clisp ecl +sbcl"
+
+RESTRICT="strip mirror"
+
+RDEPEND="dev-lisp/cl-ppcre
+ sbcl? ( >=dev-lisp/sbcl-1.0.32 )
+ sbcl? ( >=dev-lisp/clx-0.7.4 )
+ !sbcl? ( !clisp? ( !ecl? ( >=dev-lisp/sbcl-1.0.32 ) ) )
+ !sbcl? ( !clisp? ( ecl? ( >=dev-lisp/ecls-10.4.1 ) ) )
+ !sbcl? ( clisp? ( >=dev-lisp/clisp-2.44[X,new-clx] ) )
+ emacs? ( virtual/emacs app-emacs/slime )"
+DEPEND="${RDEPEND}
+ sys-apps/texinfo
+ doc? ( virtual/texi2dvi )"
+
+SITEFILE=70${PN}-gentoo.el
+
+get_lisp() {
+ local lisp
+
+ for lisp in "$@" ; do
+ use ${lisp} && echo ${lisp} && return
+ done
+}
+
+do_doc() {
+ local pdffile="${PN}.pdf"
+
+ texi2pdf -o "${pdffile}" "${PN}.texi.in" && dodoc "${pdffile}" || die
+ cp "${FILESDIR}/README.Gentoo" . && sed -i "s:@VERSION@:${PV}:" README.Gentoo || die
+ dodoc AUTHORS NEWS README.md README.Gentoo
+ doinfo "${PN}.info"
+ docinto examples ; dodoc sample-stumpwmrc.lisp
+}
+
+src_prepare() {
+ # Upstream didn't change the version before packaging
+ sed -i "${S}/${PN}.asd" -e 's/:version "0.9.8"/:version "0.9.9"/' || die
+ # Bug 534592. Does not build with asdf:oos, using require to load the package
+ sed -i "${S}/load-${PN}.lisp.in" -e "s/asdf:oos 'asdf:load-op/require/" || die
+ eautoreconf
+}
+
+src_configure() {
+ econf --with-lisp=$(get_lisp sbcl clisp ecl)
+}
+
+src_compile() {
+ emake -j1
+}
+
+src_install() {
+ common-lisp-export-impl-args $(get_lisp sbcl clisp ecl)
+ dobin stumpwm
+ make_session_desktop StumpWM /usr/bin/stumpwm
+
+ common-lisp-install-sources *.lisp
+ common-lisp-install-asdf ${PN}.asd
+ use doc && do_doc
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/x11-wm/stumpwm/stumpwm-9999.ebuild b/x11-wm/stumpwm/stumpwm-9999.ebuild
new file mode 100644
index 000000000000..cf73b6f39232
--- /dev/null
+++ b/x11-wm/stumpwm/stumpwm-9999.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools common-lisp-3 git-2
+
+DESCRIPTION="Stumpwm is a tiling, keyboard driven X11 Window Manager written entirely in Common Lisp."
+HOMEPAGE="http://www.nongnu.org/stumpwm/index.html"
+EGIT_REPO_URI="git://github.com/stumpwm/stumpwm"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="doc clisp emacs +sbcl"
+
+DEPEND="dev-lisp/common-lisp-controller
+ virtual/commonlisp
+ dev-lisp/cl-ppcre
+ doc? ( virtual/texi2dvi )"
+
+RDEPEND="${DEPEND}
+ emacs? ( app-emacs/slime )
+ !clisp? ( !sbcl? ( !amd64? ( dev-lisp/cmucl ) ) )
+ clisp? ( >=dev-lisp/clisp-2.38-r2[X,-new-clx] )
+ sbcl? ( >=dev-lisp/sbcl-1.1.15 dev-lisp/clx )"
+
+do_doc() {
+ local pdffile="${PN}.pdf"
+
+ dodoc AUTHORS NEWS README.md
+ texi2pdf -o "${pdffile}" "${PN}.texi.in" && dodoc "${pdffile}" || die
+}
+
+src_prepare() {
+ eautoreconf
+}
+
+src_compile() {
+ emake -j1
+}
+
+src_install() {
+ common-lisp-install-sources *.lisp
+ common-lisp-install-asdf
+ dobin "${PN}"
+ use doc && do_doc
+}
diff --git a/x11-wm/subtle/Manifest b/x11-wm/subtle/Manifest
new file mode 100644
index 000000000000..55dc15e91c8c
--- /dev/null
+++ b/x11-wm/subtle/Manifest
@@ -0,0 +1 @@
+DIST subtle-0.11.3244.tar.gz 190549 SHA256 63f0a33ca187123f05f4f98b57fa05835d594ae9f018298e7e76e9a0be3f08b8 SHA512 3d6edd5cb1b5dcd058caeddf3ead024c7cce39684baca8bac9709683ce3130a5c8433cbe046d28dc7420637dd855a2b6775638097f78a5e701bb85e505e8167c WHIRLPOOL 1e555dbd211247c1c771dcd70a89fe0413bf4e0ad4255da0187c74dd05b22aeea738a299cf6b9eb0edb7801ab5b15e6e1f98d556fcd8ac654b3ed69a2a56dfbb
diff --git a/x11-wm/subtle/metadata.xml b/x11-wm/subtle/metadata.xml
new file mode 100644
index 000000000000..bf1ba89abd04
--- /dev/null
+++ b/x11-wm/subtle/metadata.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>radhermit@gentoo.org</email>
+ <name>Tim Harder</name>
+ </maintainer>
+ <longdescription lang="en">
+ 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 doesn't allow weak tagging and always maps windows to
+ virtual desktops (called views) with matching tags, regardless of the
+ current active view.
+ </longdescription>
+ <use>
+ <flag name='xrandr'>Enable support for the X RandR extension</flag>
+ <flag name='xtest'>Enable support for the XTest extension</flag>
+ </use>
+</pkgmetadata>
diff --git a/x11-wm/subtle/subtle-0.11.3244.ebuild b/x11-wm/subtle/subtle-0.11.3244.ebuild
new file mode 100644
index 000000000000..6f5f6c65e2f1
--- /dev/null
+++ b/x11-wm/subtle/subtle-0.11.3244.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+USE_RUBY="ruby20 ruby21 ruby22"
+
+inherit ruby-ng toolchain-funcs
+
+if [[ ${PV} == "9999" ]]; then
+ EHG_REPO_URI="http://hg.subforge.org/subtle"
+ EHG_CHECKOUT_DIR=${S}/all
+ inherit mercurial
+else
+ SRC_URI="http://dev.gentoo.org/~radhermit/dist/${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="A manual tiling window manager"
+HOMEPAGE="http://subforge.org/projects/subtle/wiki"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="debug doc +xft xinerama xpm +xrandr +xtest"
+
+RDEPEND="x11-libs/libX11
+ xft? ( x11-libs/libXft )
+ xinerama? ( x11-libs/libXinerama )
+ xpm? ( x11-libs/libXpm )
+ xtest? ( x11-libs/libXtst )
+ xrandr? ( x11-libs/libXrandr )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+ruby_add_rdepend "dev-ruby/archive-tar-minitar"
+ruby_add_bdepend "dev-ruby/rake"
+
+all_ruby_unpack() {
+ if [[ ${PV} == "9999" ]]; then
+ mercurial_src_unpack
+ else
+ default
+ fi
+}
+
+each_ruby_configure() {
+ local myconf
+ use debug && myconf+=" debug=yes" || myconf+=" debug=no"
+ use xft && myconf+=" xft=yes" || myconf+=" xft=no"
+ use xinerama && myconf+=" xinerama=yes" || myconf+=" xinerama=no"
+ use xpm && myconf+=" xpm=yes" || myconf+=" xpm=no"
+ use xtest && myconf+=" xtest=yes" || myconf+=" xtest=no"
+ use xrandr && myconf+=" xrandr=yes" || myconf+=" xrandr=no"
+
+ ${RUBY} -S rake -v CC="$(tc-getCC)" destdir="${D}" ${myconf} config || die
+}
+
+each_ruby_compile() {
+ ${RUBY} -S rake -v build || die
+}
+
+all_ruby_compile() {
+ use doc && { rake rdoc || die ; }
+}
+
+each_ruby_install() {
+ ${RUBY} -S rake -v install || die
+}
+
+all_ruby_install() {
+ dodir /etc/X11/Sessions
+ cat <<-EOF > "${D}/etc/X11/Sessions/${PN}"
+ #!/bin/sh
+ exec /usr/bin/subtle
+ EOF
+ fperms a+x /etc/X11/Sessions/${PN}
+
+ insinto /usr/share/xsessions
+ doins data/${PN}.desktop
+
+ dodoc AUTHORS NEWS
+
+ use doc && dohtml -r html/*
+}
+
+pkg_postinst() {
+ elog "Note that surserver will currently not work since dev-ruby/datamapper"
+ elog "is not in the tree."
+}
diff --git a/x11-wm/subtle/subtle-9999.ebuild b/x11-wm/subtle/subtle-9999.ebuild
new file mode 100644
index 000000000000..6f5f6c65e2f1
--- /dev/null
+++ b/x11-wm/subtle/subtle-9999.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+USE_RUBY="ruby20 ruby21 ruby22"
+
+inherit ruby-ng toolchain-funcs
+
+if [[ ${PV} == "9999" ]]; then
+ EHG_REPO_URI="http://hg.subforge.org/subtle"
+ EHG_CHECKOUT_DIR=${S}/all
+ inherit mercurial
+else
+ SRC_URI="http://dev.gentoo.org/~radhermit/dist/${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="A manual tiling window manager"
+HOMEPAGE="http://subforge.org/projects/subtle/wiki"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="debug doc +xft xinerama xpm +xrandr +xtest"
+
+RDEPEND="x11-libs/libX11
+ xft? ( x11-libs/libXft )
+ xinerama? ( x11-libs/libXinerama )
+ xpm? ( x11-libs/libXpm )
+ xtest? ( x11-libs/libXtst )
+ xrandr? ( x11-libs/libXrandr )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+ruby_add_rdepend "dev-ruby/archive-tar-minitar"
+ruby_add_bdepend "dev-ruby/rake"
+
+all_ruby_unpack() {
+ if [[ ${PV} == "9999" ]]; then
+ mercurial_src_unpack
+ else
+ default
+ fi
+}
+
+each_ruby_configure() {
+ local myconf
+ use debug && myconf+=" debug=yes" || myconf+=" debug=no"
+ use xft && myconf+=" xft=yes" || myconf+=" xft=no"
+ use xinerama && myconf+=" xinerama=yes" || myconf+=" xinerama=no"
+ use xpm && myconf+=" xpm=yes" || myconf+=" xpm=no"
+ use xtest && myconf+=" xtest=yes" || myconf+=" xtest=no"
+ use xrandr && myconf+=" xrandr=yes" || myconf+=" xrandr=no"
+
+ ${RUBY} -S rake -v CC="$(tc-getCC)" destdir="${D}" ${myconf} config || die
+}
+
+each_ruby_compile() {
+ ${RUBY} -S rake -v build || die
+}
+
+all_ruby_compile() {
+ use doc && { rake rdoc || die ; }
+}
+
+each_ruby_install() {
+ ${RUBY} -S rake -v install || die
+}
+
+all_ruby_install() {
+ dodir /etc/X11/Sessions
+ cat <<-EOF > "${D}/etc/X11/Sessions/${PN}"
+ #!/bin/sh
+ exec /usr/bin/subtle
+ EOF
+ fperms a+x /etc/X11/Sessions/${PN}
+
+ insinto /usr/share/xsessions
+ doins data/${PN}.desktop
+
+ dodoc AUTHORS NEWS
+
+ use doc && dohtml -r html/*
+}
+
+pkg_postinst() {
+ elog "Note that surserver will currently not work since dev-ruby/datamapper"
+ elog "is not in the tree."
+}
diff --git a/x11-wm/treewm/Manifest b/x11-wm/treewm/Manifest
new file mode 100644
index 000000000000..fe5600fc1434
--- /dev/null
+++ b/x11-wm/treewm/Manifest
@@ -0,0 +1 @@
+DIST treewm-0.4.5.tar.bz2 87098 SHA256 3daea1c8d5dfe44bfe4e038e112f7ae5044c7978b196acd0258ac6f51e2f8c13
diff --git a/x11-wm/treewm/files/treewm-0.4.5-gcc43.patch b/x11-wm/treewm/files/treewm-0.4.5-gcc43.patch
new file mode 100644
index 000000000000..a8faf4319871
--- /dev/null
+++ b/x11-wm/treewm/files/treewm-0.4.5-gcc43.patch
@@ -0,0 +1,20 @@
+--- treewm-0.4.5b/src/action.cc 2009-01-17 18:17:32.000000000 -0400
++++ treewm-0.4.5/src/action.cc 2009-01-17 18:20:41.000000000 -0400
+@@ -9,6 +9,7 @@
+ #include "clienttree.h"
+ #include "clientinfo.h"
+ #include <unistd.h>
++#include <string.h>
+
+ Action::Action(Section *section) {
+ s = section;
+--- treewm-0.4.5b/src/resmanager.h 2009-01-17 18:17:32.000000000 -0400
++++ treewm-0.4.5/src/resmanager.h 2009-01-17 18:21:10.000000000 -0400
+@@ -12,6 +12,7 @@
+ #include "global.h"
+ #include "client.h"
+ #include <map>
++#include <string.h>
+
+ struct ltstr {
+ bool operator() (const char* s1, const char* s2) const {
diff --git a/x11-wm/treewm/metadata.xml b/x11-wm/treewm/metadata.xml
new file mode 100644
index 000000000000..775c9627a346
--- /dev/null
+++ b/x11-wm/treewm/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>lordvan@gentoo.org</email>
+ <name>Thomas Raschbacher</name>
+ </maintainer>
+ <longdescription>WindowManager that arranges the windows in a tree not a list</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">treewm</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/x11-wm/treewm/treewm-0.4.5-r1.ebuild b/x11-wm/treewm/treewm-0.4.5-r1.ebuild
new file mode 100644
index 000000000000..2cc8b1d229a1
--- /dev/null
+++ b/x11-wm/treewm/treewm-0.4.5-r1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils
+
+DESCRIPTION="WindowManager that arranges the windows in a tree (not in a list)"
+SRC_URI="mirror://sourceforge/treewm/${P}.tar.bz2"
+HOMEPAGE="http://treewm.sourceforge.net/"
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~ppc ~sparc ~x86"
+IUSE=""
+
+RDEPEND="
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXxf86vm
+ x11-libs/libXpm"
+DEPEND="${RDEPEND}
+ x11-misc/imake
+ x11-proto/xf86vidmodeproto"
+
+src_prepare() {
+ # bug 251845
+ epatch "${FILESDIR}/${P}-gcc43.patch"
+ # bug 86453
+ sed -i xprop/dsimple.c \
+ -e 's:malloc:Malloc:g' \
+ || die "sed xprop/dsimple.c"
+}
+
+src_compile() {
+ # only compile treewm, not (x11-apps/){xprop,xkill}
+ emake treewm \
+ CXX=$(tc-getCXX) \
+ CCOPTIONS="${CFLAGS}" \
+ EXTRA_LDOPTIONS="${LDFLAGS}" \
+ PREFIX="/usr" ROOT="${D}" \
+ || die "emake"
+}
+
+src_install() {
+ # only install treewm, not (x11-apps/){xprop,xkill}
+ dobin src/treewm
+ dodoc AUTHORS ChangeLog PROBLEMS README README.tiling TODO default.cfg \
+ sample.cfg
+ insinto /usr/share/pixmaps/treewm
+ doins src/pixmaps/*.xpm
+}
+
+pkg_postinst() {
+ elog "x11-wm/treewm used to install its own versions of x11-apps/xprop and"
+ elog "x11-apps/xkill as treewm-xprop and treewm-xkill respectively, since"
+ elog "they are assumed to be broken in combination with treewm. Since"
+ elog "X(org) has become modular since treewm's last release and are not"
+ elog "installed by default, we can leave those out and simply point out"
+ elog "that it is NOT adviseable to use these programs when using treewm."
+}
diff --git a/x11-wm/treewm/treewm-0.4.5.ebuild b/x11-wm/treewm/treewm-0.4.5.ebuild
new file mode 100644
index 000000000000..d412bd23fa91
--- /dev/null
+++ b/x11-wm/treewm/treewm-0.4.5.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="WindowManager that arranges the windows in a tree (not in a list)"
+SRC_URI="mirror://sourceforge/treewm/${P}.tar.bz2"
+HOMEPAGE="http://treewm.sourceforge.net/"
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="x86 sparc ppc"
+IUSE=""
+
+RDEPEND="x11-libs/libXau
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXxf86vm
+ x11-libs/libXdmcp
+ x11-libs/libXpm"
+DEPEND="${RDEPEND}
+ x11-misc/imake
+ x11-proto/xf86vidmodeproto"
+
+src_unpack() {
+ unpack ${A}
+ # bug 251845
+ epatch "${FILESDIR}/${P}-gcc43.patch"
+ # bug 86453
+ sed -i -e "s:malloc:Malloc:g" "${S}"/xprop/dsimple.c
+}
+
+src_compile() {
+ emake PREFIX="/usr" ROOT="${D}" || die
+}
+
+src_install() {
+ make PREFIX="/usr" ROOT="${D}" install || die
+
+ # hack for Gentoo's doc policy:
+ cd "${D}/usr/share/doc/treewm" && dodoc * && cd .. && rm -rf treewm || die
+}
diff --git a/x11-wm/twm/Manifest b/x11-wm/twm/Manifest
new file mode 100644
index 000000000000..79b96a0fc499
--- /dev/null
+++ b/x11-wm/twm/Manifest
@@ -0,0 +1,2 @@
+DIST twm-1.0.8.tar.bz2 275201 SHA256 7660352353d632127ff50390991706aa660b28a4ada816c2582ac02720722e44 SHA512 669c6453574d3f12ce27ab365303b1fdf5bbe2d0219bff5decf7058cd08eb942202f4006a35352554b6220c618a1e5405515fbec8e0df1387420e08bc871d663 WHIRLPOOL 3968b2be299bc9e2202cf3560a08fbbee4c2007eea514b779224a0c8748fbaedb34c952d0d785c6739e9459a737fbf40c5c35f6c1fb6839aa3379e34f425f662
+DIST twm-1.0.9.tar.bz2 284160 SHA256 c575167ac33edf3bd1592f1bedfe0559debb128ed5fb4873c1278e3be166310a SHA512 7b967560d19d1d928729688b7fab8cb7ff1221cef8054b8ad8e62ff0abc451466b49f0ff55a06d7ca89304eda4125e3285751d983705d8d27bb34677a0bf0fbf WHIRLPOOL 205c965f6120548e6b0625a24de518a3bcb03ed7129a614317330d109c633838fdca6c9b13091c63d126de960064bff6316731c9806e318264f5aa9c4b3c6d3f
diff --git a/x11-wm/twm/metadata.xml b/x11-wm/twm/metadata.xml
new file mode 100644
index 000000000000..01c4c004e735
--- /dev/null
+++ b/x11-wm/twm/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>x11</herd>
+</pkgmetadata>
diff --git a/x11-wm/twm/twm-1.0.8.ebuild b/x11-wm/twm/twm-1.0.8.ebuild
new file mode 100644
index 000000000000..f3be0aedb537
--- /dev/null
+++ b/x11-wm/twm/twm-1.0.8.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+XORG_STATIC=no
+inherit xorg-2
+
+DESCRIPTION="X.Org twm application"
+
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE=""
+
+RDEPEND="x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXt
+ x11-libs/libXmu
+ x11-libs/libICE
+ x11-libs/libSM"
+DEPEND="${RDEPEND}
+ sys-devel/bison"
diff --git a/x11-wm/twm/twm-1.0.9.ebuild b/x11-wm/twm/twm-1.0.9.ebuild
new file mode 100644
index 000000000000..fdf88bb89bdd
--- /dev/null
+++ b/x11-wm/twm/twm-1.0.9.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+XORG_STATIC=no
+inherit xorg-2
+
+DESCRIPTION="X.Org twm application"
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE=""
+
+RDEPEND="x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXt
+ x11-libs/libXmu
+ x11-libs/libICE
+ x11-libs/libSM"
+DEPEND="${RDEPEND}
+ sys-devel/bison"
diff --git a/x11-wm/vtwm/Manifest b/x11-wm/vtwm/Manifest
new file mode 100644
index 000000000000..8535e6bffb95
--- /dev/null
+++ b/x11-wm/vtwm/Manifest
@@ -0,0 +1,2 @@
+DIST vtwm-5.4.6a.tar.gz 992488 SHA256 e31fca6071f82f082d78a816062c32c87aafb25aa2c2419a2ec8a1bfe2e50f71
+DIST vtwm-5.4.7.tar.gz 1021160 SHA256 c62f692c42420666920a23cd489633e91789b379fed13561321b44d9ffa8c9e9
diff --git a/x11-wm/vtwm/files/vtwm-5.4.7-NO_SOUND_SUPPORT.patch b/x11-wm/vtwm/files/vtwm-5.4.7-NO_SOUND_SUPPORT.patch
new file mode 100644
index 000000000000..2006d66519e2
--- /dev/null
+++ b/x11-wm/vtwm/files/vtwm-5.4.7-NO_SOUND_SUPPORT.patch
@@ -0,0 +1,35 @@
+* Remove all traces of sound support, even when Imakefile suggests uncommenting
+* a variable is enough - JeR
+
+--- a/gram.y 2005-05-17 03:19:48.000000000 +0200
++++ b/gram.y 2010-09-17 01:43:51.000000000 +0200
+@@ -339,8 +339,6 @@
+ function
+ | ICONS { list = &Scr->IconNames; }
+ icon_list
+- | SOUNDS
+- sound_list
+ | COLOR { color = COLOR; }
+ color_list
+ | SAVECOLOR
+@@ -743,20 +741,6 @@
+ }
+ ;
+
+-/* djhjr - 6/22/01 */
+-sound_list : LB sound_entries RB
+- ;
+-
+-/* djhjr - 6/22/01 */
+-sound_entries : /* Empty */
+- | sound_entries sound_entry
+- ;
+-
+-/* djhjr - 8/16/01 */
+-sound_entry : string string { if (Scr->FirstTime) SetSound($1, $2, -1); }
+- | string string number { if (Scr->FirstTime) SetSound($1, $2, $3); }
+- ;
+-
+ /* djhjr - 4/26/99 */
+ applet_list : LB applet_entries RB
+ ;
diff --git a/x11-wm/vtwm/files/vtwm-5.4.7-do-not-rm.patch b/x11-wm/vtwm/files/vtwm-5.4.7-do-not-rm.patch
new file mode 100644
index 000000000000..170dd3dd9806
--- /dev/null
+++ b/x11-wm/vtwm/files/vtwm-5.4.7-do-not-rm.patch
@@ -0,0 +1,45 @@
+* Remove all pointless RM calls as this only results in rebuilding in
+* src_install(). -JeR
+
+
+--- a/Imakefile 2005-05-09 14:46:24.000000000 +0200
++++ b/Imakefile 2010-09-17 02:07:22.000000000 +0200
+@@ -128,10 +128,8 @@
+ depend:: lex.c gram.c deftwmrc.c lastmake.c vtwm.man
+
+ all::
+- $(RM) deftwmrc.* lastmake.*
+
+ install::
+- $(RM) deftwmrc.* lastmake.*
+ $(MAKE) install.man
+
+ clean::
+@@ -144,7 +142,6 @@
+ $(MV) y.tab.h gram.h
+
+ deftwmrc.c: system.vtwmrc
+- $(RM) $@
+ echo '/* ' >>$@
+ echo ' * This file is generated automatically from the default' >>$@
+ echo ' * VTWM bindings file system.vtwmrc.'$(SYS_VTWMRC_LOOK)' by the VTWM Makefile.' >>$@
+@@ -155,7 +152,6 @@
+ echo '(char *)0 };' >>$@
+
+ lastmake.c:
+- $(RM) $@
+ echo '/* ' >>$@
+ echo ' * This file is generated automatically by the VTWM Makefile.' >>$@
+ echo ' */' >>$@
+@@ -166,11 +162,9 @@
+ echo ' "" };' >>$@
+
+ system.vtwmrc:
+- $(RM) $@
+ $(CP) $@.$(SYS_VTWMRC_LOOK) $@
+
+ vtwm.man:
+- $(RM) $@
+ $(LN) doc/$@ $@
+
+ XCOMM Handy for developers to check the man page
diff --git a/x11-wm/vtwm/metadata.xml b/x11-wm/vtwm/metadata.xml
new file mode 100644
index 000000000000..3d8990dfc532
--- /dev/null
+++ b/x11-wm/vtwm/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>maintainer-needed@gentoo.org</email></maintainer>
+ <longdescription>VTWM, one of many TWM descendants, implements a Virtual
+ Desktop, meaning that what is currently on screen is just a portion of a
+ larger workspace. What portion of the virtual desktop that is displayed,
+ and whatever windows might be visible within it, are simple
+ point-and-click operations within a scaled representation of the
+ workspace.</longdescription>
+ <use>
+ <flag name="rplay">Enable rplay support, needed for sound.</flag>
+ </use>
+</pkgmetadata>
diff --git a/x11-wm/vtwm/vtwm-5.4.6a.ebuild b/x11-wm/vtwm/vtwm-5.4.6a.ebuild
new file mode 100644
index 000000000000..8349b58f0fd3
--- /dev/null
+++ b/x11-wm/vtwm/vtwm-5.4.6a.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="one of many TWM descendants and implements a Virtual Desktop"
+HOMEPAGE="http://www.vtwm.org/"
+SRC_URI="ftp://ftp.visi.com/users/hawkeyd/X/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="alpha ppc sparc x86"
+IUSE=""
+
+RDEPEND="x11-libs/libX11
+ x11-libs/libXmu
+ x11-libs/libXt
+ x11-libs/libXext
+ x11-libs/libXpm"
+DEPEND="${RDEPEND}
+ x11-misc/imake
+ app-text/rman
+ x11-proto/xproto
+ x11-proto/xextproto"
+
+src_compile() {
+ xmkmf || die "xmkmf failed"
+ emake -j1 || die "emake failed"
+}
+
+src_install() {
+ make BINDIR=/usr/bin \
+ LIBDIR=/etc/X11 \
+ MANPATH=/usr/share/man \
+ DESTDIR="${D}" install || die "make install failed"
+
+ echo "#!/bin/sh" > vtwm
+ echo "xsetroot -cursor_name left_ptr &" >> vtwm
+ echo "/usr/bin/vtwm" >> vtwm
+ exeinto /etc/X11/Sessions
+ doexe vtwm || die
+ dodoc doc/{4.6.*,CHANGELOG,BUGS,DEVELOPERS,HISTORY,SOUND,WISHLIST} || die
+}
diff --git a/x11-wm/vtwm/vtwm-5.4.7-r1.ebuild b/x11-wm/vtwm/vtwm-5.4.7-r1.ebuild
new file mode 100644
index 000000000000..4c79db3ba790
--- /dev/null
+++ b/x11-wm/vtwm/vtwm-5.4.7-r1.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="one of many TWM descendants and implements a Virtual Desktop"
+HOMEPAGE="http://www.vtwm.org/"
+SRC_URI="http://www.vtwm.org/downloads/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~ppc ~sparc ~x86"
+IUSE="rplay"
+
+RDEPEND="x11-libs/libX11
+ x11-libs/libXmu
+ x11-libs/libXt
+ x11-libs/libXext
+ x11-libs/libXpm
+ rplay? ( media-sound/rplay )"
+DEPEND="${RDEPEND}
+ sys-devel/bison
+ sys-devel/flex
+ x11-misc/imake
+ app-text/rman
+ x11-proto/xproto
+ x11-proto/xextproto"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-do-not-rm.patch
+ sed -i Imakefile \
+ -e 's:-L/usr/local/lib::g' \
+ -e 's:-I/usr/local/include::g' \
+ || die "sed Imakefile"
+ if ! use rplay ; then
+ sed -i Imakefile \
+ -e 's:^XCOMM\ \(.*NO_SOUND\):\1:' \
+ -e 's:^\(SOUNDLIB.*\):XCOMM\ \1:' \
+ -e 's:sound\..::g' \
+ || die "sed Imakefile"
+ epatch "${FILESDIR}"/${P}-NO_SOUND_SUPPORT.patch
+ fi
+}
+
+src_configure() {
+ xmkmf || die "xmkmf failed"
+ emake depend || die "emake depend"
+}
+
+src_compile() {
+ emake \
+ CC=$(tc-getCC) \
+ CCOPTIONS="${CFLAGS}" \
+ EXTRA_LDOPTIONS="${LDFLAGS}" \
+ || die "emake failed"
+}
+
+src_install() {
+ emake BINDIR=/usr/bin \
+ LIBDIR=/etc/X11 \
+ MANPATH=/usr/share/man \
+ DESTDIR="${D}" install || die "emake install failed"
+
+ echo "#!/bin/sh" > vtwm
+ echo "xsetroot -cursor_name left_ptr &" >> vtwm
+ echo "/usr/bin/vtwm" >> vtwm
+ exeinto /etc/X11/Sessions
+ doexe vtwm || die
+ dodoc doc/{4.7.*,CHANGELOG,BUGS,DEVELOPERS,HISTORY,SOUND,WISHLIST} || die
+}
diff --git a/x11-wm/windowlab/Manifest b/x11-wm/windowlab/Manifest
new file mode 100644
index 000000000000..9daa1f98fde6
--- /dev/null
+++ b/x11-wm/windowlab/Manifest
@@ -0,0 +1,2 @@
+DIST windowlab-1.34.tar 163840 SHA256 a646abd1a7b1c548621ba8fcadc32311555e89f2a45b78a0f105421d618e4d35
+DIST windowlab-1.40.tar 174080 SHA256 1c9cca5d997cfdcec093e98b7f1996da2d806fbbe4472bdcca568863f3e75d93
diff --git a/x11-wm/windowlab/files/windowlab-1.34-fixed-font.patch b/x11-wm/windowlab/files/windowlab-1.34-fixed-font.patch
new file mode 100644
index 000000000000..0dd095ce0733
--- /dev/null
+++ b/x11-wm/windowlab/files/windowlab-1.34-fixed-font.patch
@@ -0,0 +1,11 @@
+--- windowlab.h.orig 2006-09-01 23:47:36.000000000 +0200
++++ windowlab.h 2006-09-01 23:47:49.000000000 +0200
+@@ -49,7 +49,7 @@
+ #ifdef XFT
+ #define DEF_FONT "-bitstream-bitstream vera sans-medium-r-*-*-*-100-*-*-*-*-*-*"
+ #else
+-#define DEF_FONT "-b&h-lucida-medium-r-*-*-10-*-*-*-*-*-*-*"
++#define DEF_FONT "fixed"
+ #endif
+
+ // use named colours, #rgb, #rrggbb or #rrrgggbbb format
diff --git a/x11-wm/windowlab/files/windowlab-1.40-gentoo.diff b/x11-wm/windowlab/files/windowlab-1.40-gentoo.diff
new file mode 100644
index 000000000000..121526ceac8b
--- /dev/null
+++ b/x11-wm/windowlab/files/windowlab-1.40-gentoo.diff
@@ -0,0 +1,53 @@
+--- Makefile.orig 2009-11-05 21:04:45.000000000 +0000
++++ Makefile 2010-05-30 15:31:04.047559352 +0000
+@@ -5,18 +5,18 @@
+ EXTRA_LIBS += -lXext
+
+ # Set this to the hardcoded location of all files if it's not /
+-PREFIX = /usr/local
++PREFIX = /usr
+
+ # Set this to the directory, below PREFIX, where man pages
+ # are expected. Below this directory, the target "install"
+ # will put "windowlab.1x" in section "man1".
+-MANBASE = /man
++MANBASE = /share/man
+
+ # Set this to the location of the X installation you want to compile against
+-XROOT = /usr/X11R6
++XROOT = /usr
+
+ # Some flexibility for configuration location
+-CONFPREFIX = $(PREFIX)
++CONFPREFIX =
+ CONFDIR = /etc/X11/windowlab
+
+ # Set this to the location of the global configuration files
+@@ -43,7 +43,6 @@
+
+ # --------------------------------------------------------------------
+
+-CC = gcc
+ ifndef CFLAGS
+ CFLAGS = -g -O2 -Wall -W
+ endif
+@@ -63,15 +62,15 @@
+ all: $(PROG)
+
+ $(PROG): $(OBJS)
+- $(CC) $(OBJS) $(LDPATH) $(LIBS) -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) $(OBJS) $(LDPATH) $(LIBS) -o $@
+
+ $(OBJS): %.o: %.c $(HEADERS)
+ $(CC) $(CFLAGS) $(DEFINES) $(INCLUDES) -c $< -o $@
+
+ install: all
+- mkdir -p $(BINDIR) && install -m 755 -s $(PROG) $(BINDIR)
+- mkdir -p $(MANDIR) && install -m 644 $(MANPAGE) $(MANDIR) && gzip -9vfn $(MANDIR)/$(MANPAGE)
+- mkdir -p $(CFGDIR) && cp -i windowlab.menurc $(CFGDIR)/windowlab.menurc && chmod 644 $(CFGDIR)/windowlab.menurc
++ install -D -m 755 $(PROG) $(BINDIR)/$(PROG)
++ install -D -m 644 $(MANPAGE) $(MANDIR)/windowlab.1
++ install -D -m 644 windowlab.menurc $(CFGDIR)/windowlab.menurc
+
+ clean:
+ rm -f $(PROG) $(OBJS)
diff --git a/x11-wm/windowlab/metadata.xml b/x11-wm/windowlab/metadata.xml
new file mode 100644
index 000000000000..8579926063c0
--- /dev/null
+++ b/x11-wm/windowlab/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>maintainer-needed@gentoo.org</email></maintainer>
+ <longdescription>
+ WindowLab is a small and simple window manager of novel design.
+
+ It has a click-to-focus but not raise-on-focus policy, a
+ window resizing mechanism that allows one or many edges of a
+ window to be changed in one action, and an innovative menubar
+ that shares the same part of the screen as the taskbar. Window
+ titlebars are prevented from going off the edge of the screen
+ by constraining the mouse pointer, and when appropriate the
+ pointer is also constrained to the taskbar/menubar in order to
+ make target menu items easier to hit.
+ </longdescription>
+</pkgmetadata>
diff --git a/x11-wm/windowlab/windowlab-1.34.ebuild b/x11-wm/windowlab/windowlab-1.34.ebuild
new file mode 100644
index 000000000000..5dd232c87ae4
--- /dev/null
+++ b/x11-wm/windowlab/windowlab-1.34.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils
+
+DESCRIPTION="small and simple window manager of novel design"
+HOMEPAGE="http://www.nickgravgaard.com/windowlab/"
+SRC_URI="http://www.nickgravgaard.com/${PN}/${P}.tar"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~mips ppc x86"
+IUSE="truetype"
+
+RDEPEND="truetype? ( x11-libs/libXft )
+ x11-libs/libXext"
+DEPEND="${RDEPEND}
+ x11-proto/xextproto
+ virtual/pkgconfig"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}/${PN}-1.34-fixed-font.patch"
+}
+
+src_compile() {
+ if use truetype ; then
+ export DEFINES=-DXFT
+ export EXTRA_INC=$(pkg-config --cflags xft)
+ export EXTRA_LIBS=$(pkg-config --libs xft)
+ fi
+ emake CFLAGS="${CFLAGS}" || die "emake failed"
+}
+
+src_install() {
+ dobin ${PN} || die
+
+ newman ${PN}.1x ${PN}.1 || die
+ dodoc CHANGELOG README TODO || die
+
+ dodir /etc/X11/${PN} || die
+ insinto /etc/X11/${PN}
+ doins ${PN}.menurc || die
+
+ dodir /etc/X11/Sessions || die
+ echo "/usr/bin/${PN}" > ${D}/etc/X11/Sessions/${PN}
+ fperms a+x /etc/X11/Sessions/${PN}
+}
+
+pkg_postinst() {
+ elog "${PN}'s menu config file has been changed from"
+ elog "/etc/X11/${PN}/menurc to /etc/X11/${PN}/${PN}.menurc"
+}
diff --git a/x11-wm/windowlab/windowlab-1.40.ebuild b/x11-wm/windowlab/windowlab-1.40.ebuild
new file mode 100644
index 000000000000..a80b77bb9ecd
--- /dev/null
+++ b/x11-wm/windowlab/windowlab-1.40.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="small and simple window manager of novel design"
+HOMEPAGE="http://www.nickgravgaard.com/windowlab/"
+SRC_URI="http://www.nickgravgaard.com/${PN}/${P}.tar"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~mips ~ppc ~x86"
+IUSE="truetype"
+
+RDEPEND="truetype? ( x11-libs/libXft )
+ x11-libs/libXext"
+DEPEND="${RDEPEND}
+ x11-proto/xextproto
+ virtual/pkgconfig"
+
+pkg_setup() {
+ if use truetype ; then
+ export DEFINES=-DXFT
+ export EXTRA_INC=$(pkg-config --cflags xft)
+ export EXTRA_LIBS=$(pkg-config --libs xft)
+ fi
+ tc-export CC
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-1.34-fixed-font.patch" \
+ "${FILESDIR}"/${P}-gentoo.diff
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+ dodoc CHANGELOG README TODO || die
+
+ exeinto /etc/X11/Sessions
+ cat <<- EOF > "${T}"/${PN}
+ #!/bin/sh
+ exec /usr/bin/${PN}
+ EOF
+ doexe "${T}"/${PN}
+}
+
+pkg_postinst() {
+ elog "${PN}'s menu config file has been changed from"
+ elog "/etc/X11/${PN}/menurc to /etc/X11/${PN}/${PN}.menurc"
+}
diff --git a/x11-wm/windowmaker/Manifest b/x11-wm/windowmaker/Manifest
new file mode 100644
index 000000000000..af7eba4c7f33
--- /dev/null
+++ b/x11-wm/windowmaker/Manifest
@@ -0,0 +1,5 @@
+DIST WindowMaker-0.92.0.tar.gz 2758524 SHA256 9edaa8d9ee6e6beb06f4c391c0aec5cd0e5b5494456cae2cdcfd49656177afc6 SHA512 3db6d7128d49ecd87d46893c63efcdda07f841bdfd5961462c0c9247d4f3937835f637dc7f4fa7169f6999595afca914c611f4249915700a461130c5a3c865d2 WHIRLPOOL 8d9395c79cdb23d4d6011dc5a1383852890f2d02fa0038a80cf81e2135b4a904065b4051fd1be07818136442f5ac792459f5cc81bc75ba090c1728aa4e4ef4cd
+DIST WindowMaker-0.95.5.tar.gz 2927995 SHA256 4b25f474fde032a060c93fbc50f1ce04729ab17ea963ca3eb8dbb82f49af70d0 SHA512 0a6eb7c3ffee1d09dbc2408be4d2c04f6647cd1195366047083b5c5c89b61e92a5c7d5d134e43775fc371ea27ac8645ad0a7cbae86ebd53f2eae20066ac56703 WHIRLPOOL eb41cffab165af4efb66b28aacbc0e4695d57a426565554f20566b02bb0f428c31e23ec50af36759992a9a18f1598a727f98168d6bde7443f58821101d1653da
+DIST WindowMaker-0.95.6.tar.gz 3004856 SHA256 435b0b4a318a3a00e8267f02cdbd826ad547b1f54259d193ce43e9a77ce06dc4 SHA512 259db96b44058fde21b7efe65419b7f7ae149029dcfbf5cf480f920d68f906cd15345105ab67d8539be44d6f1b30e62accf68fc009d53af8c12e047c01154a11 WHIRLPOOL 6f27180cc4439b4b19c3f249fc9c5577463187c741c2e04112bb70feb8e052ad1093e0a5103f1772b59ee7b2549f7b126ac621165f94483e22fd756a969e0e3c
+DIST WindowMaker-extra-0.1.tar.gz 238018 SHA256 acd6e1fb790485b107daf2b710da372367b41383c55d9c8bdfdac521d850edc4 SHA512 0fe9b3ffc093942db167d8a01e15c0f6741f3a40959d1434ea4f23e7b9d4a9c13935a61eabef9691e5fdfd4e407564caafce15c2d65d66499960a6764a874ab8 WHIRLPOOL f2c61b318f64a2debb727ae79dfa1bb8101888bc9492633a96ace0e704c731c383e92882c871622987d5971b919359c066638fba05c5dade330fe3bee21bb034
+DIST windowmaker-0.92.0-patchset-5.tar.bz2 226417 SHA256 3298be8a2f1eb8130c249df790ed2a35a230c337f2d12fd426e14df9652a9adc SHA512 9edc25386658e5ddeaee2e3c7f396adbe16e9fdccde906f7b69bca95b1e0b33a2b2481fa445f5cf5b8e6b2492ca1b8409615e7a66f7d039d449d099523c4c779 WHIRLPOOL 62b42d533f2c2c22259aa0004ab995472e455997ccb6074e3f5b599b22cdd1c640003b6903c104e8663e62be312254afbc4d4147366af72eb16227b36eacd77c
diff --git a/x11-wm/windowmaker/files/windowmaker-0.95.3-fix_underlinking.patch b/x11-wm/windowmaker/files/windowmaker-0.95.3-fix_underlinking.patch
new file mode 100644
index 000000000000..cd88709dc148
--- /dev/null
+++ b/x11-wm/windowmaker/files/windowmaker-0.95.3-fix_underlinking.patch
@@ -0,0 +1,15 @@
+diff --git a/wmlib/Makefile.am b/wmlib/Makefile.am
+index 0f8201f..7b95d1f 100644
+--- a/wmlib/Makefile.am
++++ b/wmlib/Makefile.am
+@@ -2,6 +2,7 @@
+ AUTOMAKE_OPTIONS = no-dependencies
+
+ libWMaker_la_LDFLAGS = -version-info 1:1:0
++libWMaker_la_LIBADD = @LIBRARY_SEARCH_PATH@ @XLIBS@
+ lib_LTLIBRARIES = libWMaker.la
+
+ include_HEADERS = WMaker.h
+--
+1.7.8.6
+
diff --git a/x11-wm/windowmaker/files/windowmaker-0.95.5-bsd_crash.patch b/x11-wm/windowmaker/files/windowmaker-0.95.5-bsd_crash.patch
new file mode 100644
index 000000000000..a3e71375f621
--- /dev/null
+++ b/x11-wm/windowmaker/files/windowmaker-0.95.5-bsd_crash.patch
@@ -0,0 +1,28 @@
+From: François Tigeot <ftigeot@wolfpond.org>
+Date: Sat, 21 Sep 2013 10:34:51 +0000 (+0200)
+Subject: osdep_bsd.c: Fix a typo causing memory to be overwritten
+X-Git-Url: http://repo.or.cz/w/wmaker-crm.git/commitdiff_plain/38e088314a2a4b7f8031f50eb546c22e5024bdf4
+
+osdep_bsd.c: Fix a typo causing memory to be overwritten
+
+* When compiled on DragonFly+gcc 4.7.3, this out of bounds array element
+ initialization causes an important variable to be overwritten and a
+ subsequent WindowMaker crash
+
+* It was sheer luck other compilers/environments didn't exhibit any obvious
+ issue so far
+---
+
+diff --git a/src/osdep_bsd.c b/src/osdep_bsd.c
+index 3393240..ad504ad 100644
+--- a/src/osdep_bsd.c
++++ b/src/osdep_bsd.c
+@@ -86,7 +86,7 @@ Bool GetCommandForPid(int pid, char ***argv, int *argc)
+ mib[0] = CTL_KERN;
+ mib[1] = KERN_ARGMAX;
+ mib[2] = 0;
+- mib[4] = 0;
++ mib[3] = 0;
+
+ count = sizeof(argmax);
+ if (sysctl(mib, 2, &argmax, &count, NULL, 0) == -1)
diff --git a/x11-wm/windowmaker/files/windowmaker-0.95.6-webp_detection.patch b/x11-wm/windowmaker/files/windowmaker-0.95.6-webp_detection.patch
new file mode 100644
index 000000000000..a451486288f6
--- /dev/null
+++ b/x11-wm/windowmaker/files/windowmaker-0.95.6-webp_detection.patch
@@ -0,0 +1,70 @@
+From e1146e56e08af2a66aecedffc6ff31d8ddcb25f3 Mon Sep 17 00:00:00 2001
+From: Christophe CURIS <christophe.curis@free.fr>
+Date: Mon, 15 Dec 2014 23:49:29 +0100
+Subject: [PATCH] configure: rewrote the detection for WebP image library
+
+Unfortunately, the detection was broken because the header is using a hack
+on the function name to provide compatibility between different versions of
+the API, which means the usual link test, which uses a known name of a
+symbol, cannot work without also using the header to get the hack applied
+on the function's name.
+
+The new detection mechanism now simply check for both header and link at
+the same time, so we're probably safe until a Major API change is decided,
+in which case we will also have to update WRaster's code anyway.
+
+Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
+---
+ m4/wm_imgfmt_check.m4 | 36 ++++++++++++++++++++++++++++--------
+ 1 files changed, 28 insertions(+), 8 deletions(-)
+
+diff --git a/m4/wm_imgfmt_check.m4 b/m4/wm_imgfmt_check.m4
+index cad2d72..d07e618 100644
+--- a/m4/wm_imgfmt_check.m4
++++ b/m4/wm_imgfmt_check.m4
+@@ -187,14 +187,34 @@ AC_DEFUN_ONCE([WM_IMGFMT_CHECK_TIFF],
+ # the variable 'supported_gfx'
+ # When not found, append info to variable 'unsupported'
+ AC_DEFUN_ONCE([WM_IMGFMT_CHECK_WEBP],
+-[WM_LIB_CHECK([WEBP], ["-lwebp"], [VP8DecodeLayer], [$XLFLAGS $XLIBS],
+- [wm_save_CFLAGS="$CFLAGS"
+- AS_IF([wm_fn_lib_try_compile "webp/decode.h" "" "return 0" ""],
+- [],
+- [AC_MSG_ERROR([found $CACHEVAR but could not find appropriate header - are you missing libwebp-dev package?])])
+- CFLAGS="$wm_save_CFLAGS"],
+- [supported_gfx], [GFXLIBS])dnl
+-]) dnl AC_DEFUN
++[AS_IF([test "x$enable_webp" = "xno"],
++ [unsupported="$unsupported WebP"],
++ [AC_CACHE_CHECK([for WebP support library], [wm_cv_imgfmt_webp],
++ [wm_cv_imgfmt_webp=no
++ dnl
++ dnl The library is using a special trick on the functions to provide
++ dnl compatibility between versions, so we cannot try linking against
++ dnl a symbol without first using the header to handle it
++ wm_save_LIBS="$LIBS"
++ LIBS="$LIBS -lwebp"
++ AC_TRY_LINK(
++ [@%:@include <webp/decode.h>],
++ [WebPGetFeatures(NULL, 1024, NULL);],
++ [wm_cv_imgfmt_webp="-lwebp"])
++ LIBS="$wm_save_LIBS"
++ AS_IF([test "x$enable_webp$wm_cv_imgfmt_webp" = "xyesno"],
++ [AC_MSG_ERROR([explicit WebP support requested but no library found])])dnl
++ ])
++ AS_IF([test "x$wm_cv_imgfmt_webp" = "xno"],
++ [unsupported="$unsupported WebP"
++ enable_webp="no"],
++ [supported_gfx="$supported_gfx WebP"
++ WM_APPEND_ONCE([$wm_cv_imgfmt_webp], [GFXLIBS])dnl
++ AC_DEFINE([USE_WEBP], [1],
++ [defined when valid Webp library with header was found])])dnl
++ ])
++AM_CONDITIONAL([USE_WEBP], [test "x$enable_webp" != "xno"])dnl
++])
+
+
+ # WM_IMGFMT_CHECK_XPM
+--
+1.7.6.6.GIT
+
diff --git a/x11-wm/windowmaker/files/wmaker.desktop b/x11-wm/windowmaker/files/wmaker.desktop
new file mode 100644
index 000000000000..fd24a0b00e0c
--- /dev/null
+++ b/x11-wm/windowmaker/files/wmaker.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+# The names/descriptions should really be better
+Name=GNUStep WindowMaker
+Comment=Use this session to run WindowMaker as your desktop environment
+Exec=/usr/bin/wmaker
+Icon=
+Type=Application
diff --git a/x11-wm/windowmaker/metadata.xml b/x11-wm/windowmaker/metadata.xml
new file mode 100644
index 000000000000..ddcce78103f8
--- /dev/null
+++ b/x11-wm/windowmaker/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>gnustep</herd>
+ <use>
+ <flag name="modelock">Enable XKB language status lock support. README
+ says: "If you don't know what it is you probably don't need
+ it."</flag>
+ <flag name='xrandr'>Enable XRandR window extension support</flag>
+ <flag name="vdesktop">Enable dynamic virtual desktop (conflicts with
+ software that works on the edges of the screen)</flag>
+ <flag name="webp">Enables WebP image format support using <pkg>media-libs/libwebp</pkg></flag>
+ </use>
+</pkgmetadata>
diff --git a/x11-wm/windowmaker/windowmaker-0.92.0-r11.ebuild b/x11-wm/windowmaker/windowmaker-0.92.0-r11.ebuild
new file mode 100644
index 000000000000..56cbbee3f356
--- /dev/null
+++ b/x11-wm/windowmaker/windowmaker-0.92.0-r11.ebuild
@@ -0,0 +1,185 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+EAPI=3
+
+inherit autotools eutils flag-o-matic
+
+# note: patchset is in gentoo/src/patchsets/windowmaker
+PATCHVER=5
+
+DESCRIPTION="The fast and light GNUstep window manager"
+HOMEPAGE="http://www.windowmaker.info/"
+SRC_URI="
+ ftp://ftp.windowmaker.info/pub/source/release/${P/windowm/WindowM}.tar.gz
+ http://www.windowmaker.info/pub/source/release/WindowMaker-extra-0.1.tar.gz
+ mirror://gentoo/${P}-patchset-${PATCHVER}.tar.bz2"
+
+SLOT="0"
+LICENSE="GPL-2"
+IUSE="gif jpeg nls png tiff modelock +vdesktop xinerama"
+KEYWORDS="alpha amd64 hppa ~mips ppc ~ppc64 sparc x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+
+DEPEND="
+ media-libs/fontconfig
+ >=x11-libs/libXft-2.1.0
+ x11-libs/libXpm
+ x11-libs/libXt
+ x11-libs/libXv
+ gif? ( >=media-libs/giflib-4.1.0-r3 )
+ png? ( media-libs/libpng:0 )
+ jpeg? ( virtual/jpeg )
+ tiff? ( media-libs/tiff:0 )
+ xinerama? ( x11-libs/libXinerama )"
+RDEPEND="${DEPEND}
+ nls? ( >=sys-devel/gettext-0.10.39 )
+ !app-i18n/scim-anthy[gtk3]
+"
+
+S=${WORKDIR}/${P/windowm/WindowM}
+
+src_prepare() {
+ local psd="${WORKDIR}"/${P}-patchset-${PATCHVER}
+
+ epatch "${psd}"/WindowMaker-0.92.0-cvs20060123.patch
+ epatch "${psd}"/WindowMaker-0.92.0-cvs-gcc41.patch
+ epatch "${psd}"/wlist-0.9x.patch
+ epatch "${psd}"/${P}-gif-before-ungif.patch
+ epatch "${psd}"/${P}-math_h.patch
+ epatch "${psd}"/${P}-gettext.patch
+ epatch "${psd}"/${P}-libpng14.patch
+ epatch "${psd}"/${P}-libpng15.patch
+
+ # Patches from upstream HG
+ epatch "${psd}"/${P}-composite-non-24bit-depth.patch
+ epatch "${psd}"/${P}-mouse-window-focus.patch
+ epatch "${psd}"/${P}-maximise-borderless-too-small.patch
+ epatch "${psd}"/${P}-xinerama-switchpanel-corruption.patch
+ epatch "${psd}"/${P}-dialog-history.patch
+ epatch "${psd}"/${P}-single-click-dockapp-start.patch
+ epatch "${psd}"/${P}-no-pop-empty-array.patch
+ epatch "${psd}"/${P}-empty-command-fatal-error.patch
+ epatch "${psd}"/${P}-findfile-overflow.patch
+ epatch "${psd}"/${P}-pointer-integer-warn-fix.patch
+ epatch "${psd}"/${P}-workspace-change-crash.patch
+ epatch "${psd}"/${P}-app-icon-fix.patch
+ epatch "${psd}"/${P}-xchangeproperty-64bits-fix.patch
+
+ # Patches from altlinux
+ epatch "${psd}"/WindowMaker-0.91.0-alt-session.patch
+ epatch "${psd}"/WindowMaker-0.91.0-alt-restartscrpt.patch
+ epatch "${psd}"/WindowMaker-0.91.0-alt-menutrans.patch
+ epatch "${psd}"/WindowMaker-0.91.0-alt-titlebar.patch
+ epatch "${psd}"/${P}-no-clip-title.patch
+ epatch "${psd}"/WindowMaker-0.91.0-alt-mmx.patch
+ epatch "${psd}"/WindowMaker-0.91.0-alt-focus.patch
+ epatch "${psd}"/WindowMaker-0.92.0-alt-alloca.patch
+
+ # New features (cool!)
+ epatch "${psd}"/${P}-doubleclick-maximise.patch
+ epatch "${psd}"/WindowMaker-0.91.0-alt-dockhotkeys.patch
+ epatch "${psd}"/WindowMaker-0.91.0-alt-vlaad-trance.patch
+ epatch "${psd}"/WindowMaker-0.91.0-alt-vlaad-newbuttons.patch
+ epatch "${psd}"/WindowMaker-0.91.0-hmepas-minimizeall.patch
+ epatch "${psd}"/WindowMaker-0.91.0-hmepas-swmenu_rclick.patch
+ epatch "${psd}"/WindowMaker-0.91.0-sga-moving-add.patch
+ epatch "${psd}"/WindowMaker-0.91.0-peter-newappicon.patch
+ epatch "${psd}"/WindowMaker-0.91.0-peter-mouse-placement.patch
+ epatch "${psd}"/WindowMaker-0.91.0-peter-appicon-bouncer2.patch
+ epatch "${psd}"/WindowMaker-0.91.0-sga-swpanel-customization.patch
+ epatch "${psd}"/WindowMaker-0.92.0-alt-newpo.patch
+
+ [[ ${CHOST} == *-interix* ]] && epatch "${psd}"/${P}-interix3.patch
+ epatch "${psd}"/${P}-darwin-setlocale.patch
+ epatch "${psd}"/${P}-nls.patch
+
+ # Add UK localisation
+ cp "${psd}"/WindowMaker-uk.po po/uk.po
+ cp "${psd}"/WPrefs-uk.po WPrefs.app/po/uk.po
+
+ # Add newbuttons resources
+ cp "${psd}"/WindowMaker-newbuttons.nextstyle.tiff \
+ WPrefs.app/tiff/nextstyle.tiff
+ cp "${psd}"/WindowMaker-newbuttons.oldstyle.tiff \
+ WPrefs.app/tiff/oldstyle.tiff
+ cp "${psd}"/WindowMaker-newbuttons.nextstyle.xpm \
+ WPrefs.app/xpm/nextstyle.xpm
+
+ # Fix some paths
+ for file in "${S}"/WindowMaker/*menu*; do
+ if [[ -r $file ]] ; then
+ sed -i -e "s:/usr/local/GNUstep/Applications/WPrefs.app:${EPREFIX}/usr/bin/:g;" "$file" || die
+ sed -i -e 's:/usr/local/share/WindowMaker:${EPREFIX}/usr/share/WindowMaker:g;' "$file" || die
+ sed -i -e 's:/opt/share/WindowMaker:${EPREFIX}/usr/share/WindowMaker:g;' "$file" || die
+ fi;
+ done;
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf
+
+ is-flag -fstack-protector && filter-flags -fstack-protector \
+ && ewarn "CFLAG -fstack-protector has been disabled, as it is known to cause bugs with WindowMaker (bug #78051)"
+ replace-flags "-Os" "-O2"
+ replace-flags "-O3" "-O2"
+
+ # image format types
+ myconf="--enable-xpm $(use_enable png) $(use_enable jpeg) $(use_enable gif) $(use_enable tiff)"
+
+ # non required X capabilities
+ myconf="${myconf} $(use_enable modelock) $(use_enable xinerama)"
+
+ if use nls; then
+ [[ -z $LINGUAS ]] && export LINGUAS="`ls po/*.po | sed 's:po/\(.*\)\.po$:\1:'`"
+ else
+ myconf="${myconf} --disable-locale"
+ fi
+
+ # enable new features, need to be done via defines
+ append-flags -DBOUNCE_APP -DNEWAPPICON
+ use vdesktop && append-flags -DVIRTUAL_DESKTOP
+
+ # default settings with $myconf appended
+ econf \
+ --sysconfdir="${EPREFIX}"/etc/X11 \
+ --with-x \
+ --enable-usermenu \
+ --with-pixmapdir="${EPREFIX}"/usr/share/pixmaps \
+ --with-nlsdir="${EPREFIX}"/usr/share/locale \
+ ${myconf}
+ cd ../WindowMaker-extra-0.1
+ econf
+}
+
+src_compile() {
+ emake || die "windowmaker: make has failed"
+
+ # WindowMaker Extra Package (themes and icons)
+ cd ../WindowMaker-extra-0.1
+ emake || die "windowmaker-extra: make has failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "windowmaker: install has failed."
+
+ dodoc AUTHORS BUGFORM BUGS ChangeLog COPYING* INSTALL* FAQ* \
+ MIRRORS README* NEWS TODO
+
+ # WindowMaker Extra
+ cd ../WindowMaker-extra-0.1
+ emake DESTDIR="${D}" install || die "windowmaker-extra: install failed"
+
+ newdoc README README.extra
+
+ # create wmaker session shell script
+ echo "#!/usr/bin/env bash" > wmaker
+ echo "${EPREFIX}/usr/bin/wmaker" >> wmaker
+ exeinto /etc/X11/Sessions/
+ doexe wmaker
+
+ insinto /etc/X11/dm/Sessions
+ doins "${FILESDIR}"/wmaker.desktop
+ make_desktop_entry /usr/bin/wmaker
+}
diff --git a/x11-wm/windowmaker/windowmaker-0.95.5-r1.ebuild b/x11-wm/windowmaker/windowmaker-0.95.5-r1.ebuild
new file mode 100644
index 000000000000..ef35c19b70f8
--- /dev/null
+++ b/x11-wm/windowmaker/windowmaker-0.95.5-r1.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils
+
+DESCRIPTION="The fast and light GNUstep window manager"
+HOMEPAGE="http://www.windowmaker.org/"
+SRC_URI=" http://windowmaker.org/pub/source/release/${P/windowm/WindowM}.tar.gz
+ http://www.windowmaker.org/pub/source/release/WindowMaker-extra-0.1.tar.gz"
+
+SLOT="0"
+LICENSE="GPL-2"
+IUSE="gif jpeg nls png tiff modelock xinerama xrandr"
+KEYWORDS="alpha amd64 ~arm hppa ~mips ppc ~ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+
+DEPEND="media-libs/fontconfig
+ >=x11-libs/libXft-2.1.0
+ x11-libs/libXmu
+ x11-libs/libXpm
+ x11-libs/libXt
+ x11-libs/libXv
+ gif? ( >=media-libs/giflib-4.1.0-r3 )
+ png? ( media-libs/libpng:0= )
+ jpeg? ( virtual/jpeg )
+ tiff? ( media-libs/tiff:0 )
+ xinerama? ( x11-libs/libXinerama )
+ xrandr? ( x11-libs/libXrandr )"
+RDEPEND="${DEPEND}
+ nls? ( >=sys-devel/gettext-0.10.39 )
+ !app-i18n/scim-anthy[gtk3]
+"
+
+S=${WORKDIR}/${P/windowm/WindowM}
+
+src_prepare() {
+ # Fix some paths
+ for file in WindowMaker/*menu* util/wmgenmenu.c; do
+ if [[ -r $file ]] ; then
+ sed -i -e "s:/usr/local/GNUstep/Applications/WPrefs.app:${EPREFIX}/usr/bin/:g;" "$file" || die
+ sed -i -e "s:/usr/local/share/WindowMaker:${EPREFIX}/usr/share/WindowMaker:g;" "$file" || die
+ sed -i -e "s:/opt/share/WindowMaker:${EPREFIX}/usr/share/WindowMaker:g;" "$file" || die
+ fi;
+ done;
+
+ epatch "${FILESDIR}"/${PN}-0.95.3-fix_underlinking.patch
+ epatch "${FILESDIR}"/${P}-bsd_crash.patch
+ eautoreconf
+}
+
+src_configure() {
+ local myconf
+
+ # image format types
+ myconf="--enable-xpm $(use_enable png) $(use_enable jpeg) $(use_enable gif) $(use_enable tiff)"
+
+ # non required X capabilities
+ myconf="${myconf} $(use_enable modelock) $(use_enable xrandr) $(use_enable xinerama)"
+
+ if use nls; then
+ [[ -z $LINGUAS ]] && export LINGUAS="`ls po/*.po | sed 's:po/\(.*\)\.po$:\1:'`"
+ else
+ myconf="${myconf} --disable-locale"
+ fi
+
+ # default settings with $myconf appended
+ econf \
+ --sysconfdir="${EPREFIX}"/etc/X11 \
+ --with-x \
+ --enable-usermenu \
+ --with-pixmapdir="${EPREFIX}"/usr/share/pixmaps \
+ --with-nlsdir="${EPREFIX}"/usr/share/locale \
+ ${myconf}
+
+ cd ../WindowMaker-extra-0.1
+ econf
+}
+
+src_compile() {
+ emake
+
+ # WindowMaker Extra Package (themes and icons)
+ cd ../WindowMaker-extra-0.1
+ emake
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ dodoc AUTHORS BUGFORM BUGS ChangeLog INSTALL* FAQ* \
+ README* NEWS TODO
+
+ # WindowMaker Extra
+ cd ../WindowMaker-extra-0.1
+ emake DESTDIR="${D}" install
+
+ newdoc README README.extra
+
+ # create wmaker session shell script
+ echo "#!/usr/bin/env bash" > wmaker
+ echo "${EPREFIX}/usr/bin/wmaker" >> wmaker
+ exeinto /etc/X11/Sessions/
+ doexe wmaker
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/wmaker.desktop
+ make_desktop_entry /usr/bin/wmaker
+}
diff --git a/x11-wm/windowmaker/windowmaker-0.95.6.ebuild b/x11-wm/windowmaker/windowmaker-0.95.6.ebuild
new file mode 100644
index 000000000000..045be493f3e6
--- /dev/null
+++ b/x11-wm/windowmaker/windowmaker-0.95.6.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils
+
+DESCRIPTION="The fast and light GNUstep window manager"
+HOMEPAGE="http://www.windowmaker.org/"
+SRC_URI=" http://windowmaker.org/pub/source/release/${P/windowm/WindowM}.tar.gz
+ http://www.windowmaker.org/pub/source/release/WindowMaker-extra-0.1.tar.gz"
+
+SLOT="0"
+LICENSE="GPL-2"
+IUSE="gif imagemagick jpeg modelock nls png tiff webp xinerama +xpm xrandr"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+
+DEPEND="media-libs/fontconfig
+ >=x11-libs/libXft-2.1.0
+ x11-libs/libXmu
+ x11-libs/libXpm
+ x11-libs/libXt
+ x11-libs/libXv
+ gif? ( >=media-libs/giflib-4.1.0-r3 )
+ imagemagick? ( media-gfx/imagemagick )
+ jpeg? ( virtual/jpeg:0= )
+ png? ( media-libs/libpng:0= )
+ tiff? ( media-libs/tiff:0 )
+ webp? ( media-libs/libwebp )
+ xinerama? ( x11-libs/libXinerama )
+ xrandr? ( x11-libs/libXrandr )"
+RDEPEND="${DEPEND}
+ nls? ( >=sys-devel/gettext-0.10.39 )
+ !app-i18n/scim-anthy[gtk3]
+"
+
+S=${WORKDIR}/${P/windowm/WindowM}
+
+src_prepare() {
+ # Fix some paths
+ for file in WindowMaker/*menu* util/wmgenmenu.c; do
+ if [[ -r $file ]] ; then
+ sed -i -e "s:/usr/local/GNUstep/Applications/WPrefs.app:${EPREFIX}/usr/bin/:g;" "$file" || die
+ sed -i -e "s:/usr/local/share/WindowMaker:${EPREFIX}/usr/share/WindowMaker:g;" "$file" || die
+ sed -i -e "s:/opt/share/WindowMaker:${EPREFIX}/usr/share/WindowMaker:g;" "$file" || die
+ fi;
+ done;
+
+ epatch "${FILESDIR}"/${PN}-0.95.3-fix_underlinking.patch
+ epatch "${FILESDIR}"/${P}-webp_detection.patch
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf
+
+ # image format types
+ myconf="$(use_enable imagemagick magick) $(use_enable jpeg) $(use_enable gif) $(use_enable png) $(use_enable tiff) $(use_enable webp) $(use_enable xpm)"
+
+ # non required X capabilities
+ myconf="${myconf} $(use_enable modelock) $(use_enable xrandr randr) $(use_enable xinerama)"
+
+ if use nls; then
+ [[ -z $LINGUAS ]] && export LINGUAS="`ls po/*.po | sed 's:po/\(.*\)\.po$:\1:'`"
+ else
+ myconf="${myconf} --disable-locale"
+ fi
+
+ # default settings with $myconf appended
+ econf \
+ --sysconfdir="${EPREFIX}"/etc/X11 \
+ --with-x \
+ --enable-usermenu \
+ --with-pixmapdir="${EPREFIX}"/usr/share/pixmaps \
+ --with-nlsdir="${EPREFIX}"/usr/share/locale \
+ ${myconf}
+
+ cd ../WindowMaker-extra-0.1
+ econf
+}
+
+src_compile() {
+ emake
+
+ # WindowMaker Extra Package (themes and icons)
+ cd ../WindowMaker-extra-0.1
+ emake
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ dodoc AUTHORS BUGFORM BUGS ChangeLog INSTALL* FAQ* \
+ README* NEWS TODO
+
+ # WindowMaker Extra
+ cd ../WindowMaker-extra-0.1
+ emake DESTDIR="${D}" install
+
+ newdoc README README.extra
+
+ # create wmaker session shell script
+ echo "#!/usr/bin/env bash" > wmaker
+ echo "${EPREFIX}/usr/bin/wmaker" >> wmaker
+ exeinto /etc/X11/Sessions/
+ doexe wmaker
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/wmaker.desktop
+ make_desktop_entry /usr/bin/wmaker
+}
diff --git a/x11-wm/windowmaker/windowmaker-9999.ebuild b/x11-wm/windowmaker/windowmaker-9999.ebuild
new file mode 100644
index 000000000000..9fcb8baf6193
--- /dev/null
+++ b/x11-wm/windowmaker/windowmaker-9999.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils git-r3
+
+DESCRIPTION="The fast and light GNUstep window manager"
+HOMEPAGE="http://www.windowmaker.org/"
+SRC_URI="http://www.windowmaker.org/pub/source/release/WindowMaker-extra-0.1.tar.gz"
+EGIT_REPO_URI="git://repo.or.cz/wmaker-crm.git"
+EGIT_BRANCH="next"
+
+SLOT="0"
+LICENSE="GPL-2"
+IUSE="gif imagemagick jpeg modelock nls png tiff webp xinerama +xpm xrandr"
+KEYWORDS=""
+
+DEPEND="media-libs/fontconfig
+ >=x11-libs/libXft-2.1.0
+ x11-libs/libXmu
+ x11-libs/libXt
+ x11-libs/libXv
+ gif? ( >=media-libs/giflib-4.1.0-r3 )
+ imagemagick? ( media-gfx/imagemagick )
+ jpeg? ( virtual/jpeg:0= )
+ png? ( media-libs/libpng:0= )
+ tiff? ( media-libs/tiff:0 )
+ webp? ( media-libs/libwebp )
+ xinerama? ( x11-libs/libXinerama )
+ xrandr? ( x11-libs/libXrandr )"
+RDEPEND="${DEPEND}
+ nls? ( >=sys-devel/gettext-0.10.39 )
+ !app-i18n/scim-anthy[gtk3]"
+
+src_unpack() {
+ # wm-extras
+ unpack ${A}
+
+ git-r3_src_unpack
+}
+
+src_prepare() {
+ # Fix some paths
+ for file in WindowMaker/*menu* util/wmgenmenu.c; do
+ if [[ -r $file ]] ; then
+ sed -i -e "s:/usr/local/GNUstep/Applications/WPrefs.app:${EPREFIX}/usr/bin/:g;" "$file" || die
+ sed -i -e "s:/usr/local/share/WindowMaker:${EPREFIX}/usr/share/WindowMaker:g;" "$file" || die
+ sed -i -e "s:/opt/share/WindowMaker:${EPREFIX}/usr/share/WindowMaker:g;" "$file" || die
+ fi;
+ done;
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf
+
+ # image format types
+ myconf="$(use_enable imagemagick magick) $(use_enable jpeg) $(use_enable gif) $(use_enable png) $(use_enable tiff) $(use_enable webp) $(use_enable xpm)"
+
+ # non required X capabilities
+ myconf="${myconf} $(use_enable modelock) $(use_enable xrandr randr) $(use_enable xinerama)"
+
+ if use nls; then
+ [[ -z $LINGUAS ]] && export LINGUAS="`ls po/*.po | sed 's:po/\(.*\)\.po$:\1:'`"
+ else
+ myconf="${myconf} --disable-locale"
+ fi
+
+ # default settings with $myconf appended
+ econf \
+ --sysconfdir="${EPREFIX}"/etc/X11 \
+ --with-x \
+ --enable-usermenu \
+ --with-pixmapdir="${EPREFIX}"/usr/share/pixmaps \
+ --localedir="${EPREFIX}"/usr/share/locale \
+ ${myconf}
+
+ cd ../WindowMaker-extra-0.1
+ econf
+}
+
+src_compile() {
+ emake
+
+ # WindowMaker Extra Package (themes and icons)
+ cd ../WindowMaker-extra-0.1
+ emake
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ dodoc AUTHORS BUGFORM BUGS ChangeLog INSTALL* FAQ* \
+ README* NEWS TODO
+
+ # WindowMaker Extra
+ cd ../WindowMaker-extra-0.1
+ emake DESTDIR="${D}" install
+
+ newdoc README README.extra
+
+ # create wmaker session shell script
+ echo "#!/usr/bin/env bash" > wmaker
+ echo "${EPREFIX}/usr/bin/wmaker" >> wmaker
+ exeinto /etc/X11/Sessions/
+ doexe wmaker
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/wmaker.desktop
+ make_desktop_entry /usr/bin/wmaker
+}
diff --git a/x11-wm/wm2/Manifest b/x11-wm/wm2/Manifest
new file mode 100644
index 000000000000..1456e684a771
--- /dev/null
+++ b/x11-wm/wm2/Manifest
@@ -0,0 +1 @@
+DIST wm2-4.tar.gz 32807 SHA256 a6c3352390f958c5033408ce73e1abd9677372a7c8c5949e39a62fda433b054d SHA512 9151267e5a6bf39587b15dc3e55b4acc05aa1b14a7a9bcb4e1ed25d474af8b0e7699343117f184c745645deb404d6f6e230809b88d9b7bb5c1f67ba0fbde72e9 WHIRLPOOL a2b8e77969fd21176db97d75be0b7e0136075b62d1f838fa08a774b7be0c28a781f5baace77518ee1a6a53167c8e0aa90c4f159dd3c2ad847d536bf78429591d
diff --git a/x11-wm/wm2/files/wm2-4-gentoo.patch b/x11-wm/wm2/files/wm2-4-gentoo.patch
new file mode 100644
index 000000000000..88c78080c542
--- /dev/null
+++ b/x11-wm/wm2/files/wm2-4-gentoo.patch
@@ -0,0 +1,146 @@
+diff -ur wm2-4/Border.C wm2-4.new/Border.C
+--- wm2-4/Border.C 1997-03-21 12:12:30.000000000 +0100
++++ wm2-4.new/Border.C 2007-06-30 16:56:10.000000000 +0200
+@@ -183,7 +183,7 @@
+
+ if (m_label) free(m_label);
+ m_label = m_client->iconName() ?
+- NewString(m_client->iconName()) : NewString("incognito");
++ NewString(m_client->iconName()) : NewString(CONFIG_INCOGNITO);
+
+ int len = strlen(m_label);
+ m_tabHeight = XRotTextWidth(m_tabFont, m_label, len) + 6 + m_tabWidth;
+diff -ur wm2-4/Buttons.C wm2-4.new/Buttons.C
+--- wm2-4/Buttons.C 1997-03-21 12:12:30.000000000 +0100
++++ wm2-4.new/Buttons.C 2007-06-30 16:56:10.000000000 +0200
+@@ -139,7 +139,11 @@
+ (allowExit && ((n) > clients.count())) ? "[Exit wm2]" \
+ : clients.item((n)-1)->label())
+
++#ifdef CONFIG_MENU_REVERSE
++ for (i = m_hiddenClients.count() - 1; i>=0; --i) {
++#else
+ for (i = 0; i < m_hiddenClients.count(); ++i) {
++#endif
+ clients.append(m_hiddenClients.item(i));
+ }
+ int nh = clients.count() + 1;
+diff -ur wm2-4/Client.C wm2-4.new/Client.C
+--- wm2-4/Client.C 1997-03-21 12:12:30.000000000 +0100
++++ wm2-4.new/Client.C 2007-06-30 16:56:10.000000000 +0200
+@@ -4,7 +4,7 @@
+
+ #include <X11/Xutil.h>
+
+-const char *const Client::m_defaultLabel = "incognito";
++const char *const Client::m_defaultLabel = CONFIG_INCOGNITO;
+
+
+
+@@ -400,7 +400,7 @@
+ }
+
+
+-int Client::getAtomProperty(Atom a, Atom type)
++uintptr_t Client::getAtomProperty(Atom a, Atom type)
+ {
+ char **p, *x;
+ if (getProperty_aux(display(), m_window, a, type, 1L,
+@@ -410,7 +410,7 @@
+
+ x = *p;
+ XFree((void *)p);
+- return (int)x;
++ return (uintptr_t)x;
+ }
+
+
+diff -ur wm2-4/Client.h wm2-4.new/Client.h
+--- wm2-4/Client.h 1997-03-21 12:12:30.000000000 +0100
++++ wm2-4.new/Client.h 2007-06-30 16:56:10.000000000 +0200
+@@ -2,6 +2,8 @@
+ #ifndef _CLIENT_H_
+ #define _CLIENT_H_
+
++#include <inttypes.h>
++
+ #include "General.h"
+ #include "Manager.h"
+ #include "Border.h"
+@@ -125,7 +127,7 @@
+ WindowManager *const m_windowManager;
+
+ char *getProperty(Atom);
+- int getAtomProperty(Atom, Atom);
++ uintptr_t getAtomProperty(Atom, Atom);
+ int getIntegerProperty(Atom);
+
+ // accessors
+diff -ur wm2-4/Config.h wm2-4.new/Config.h
+--- wm2-4/Config.h 1997-03-21 12:12:30.000000000 +0100
++++ wm2-4.new/Config.h 2007-06-30 16:56:10.000000000 +0200
+@@ -39,6 +39,9 @@
+
+ #define CONFIG_FRAME_THICKNESS 7
+
++#define CONFIG_INCOGNITO "incognito"
++#define CONFIG_MENU_REVERSE
++
+ // If CONFIG_PROD_SHAPE is True, all frame element shapes will be
+ // recalculated afresh every time their focus changes. This will
+ // probably slow things down hideously, but has been reported as
+@@ -46,4 +49,3 @@
+ #define CONFIG_PROD_SHAPE False
+
+ #endif
+-
+diff -ur wm2-4/General.h wm2-4.new/General.h
+--- wm2-4/General.h 1997-03-21 12:12:30.000000000 +0100
++++ wm2-4.new/General.h 2007-06-30 16:56:10.000000000 +0200
+@@ -32,7 +32,7 @@
+ #define NewString(x) (strcpy((char *)malloc(strlen(x)+1),(x)))
+
+ #ifndef SIGNAL_CALLBACK_TYPE
+-#define SIGNAL_CALLBACK_TYPE (void (*)(...))
++#define SIGNAL_CALLBACK_TYPE (void (*)(int))
+ #endif
+
+ #define signal(x,y) \
+diff -ur wm2-4/Makefile wm2-4.new/Makefile
+--- wm2-4/Makefile 1997-03-21 12:12:30.000000000 +0100
++++ wm2-4.new/Makefile 2007-06-30 16:56:10.000000000 +0200
+@@ -1,8 +1,8 @@
+
+-LIBS = -L/usr/X11/lib -lXext -lX11 -lXmu -lm
++LIBS = -L/usr/X11R6/lib -lXext -lX11 -lXmu -lm
+
+ CC = gcc
+-CCC = gcc
++CCC = g++
+ CFLAGS = -O2
+ OBJECTS = Border.o Buttons.o Client.o Events.o Main.o Manager.o Rotated.o
+
+diff -ur wm2-4/Manager.C wm2-4.new/Manager.C
+--- wm2-4/Manager.C 1997-03-21 12:12:30.000000000 +0100
++++ wm2-4.new/Manager.C 2007-06-30 16:56:10.000000000 +0200
+@@ -368,7 +368,7 @@
+ return m_currentTime;
+ }
+
+-void WindowManager::sigHandler()
++void WindowManager::sigHandler(int n)
+ {
+ m_signalled = True;
+ }
+diff -ur wm2-4/Manager.h wm2-4.new/Manager.h
+--- wm2-4/Manager.h 1997-03-21 12:12:30.000000000 +0100
++++ wm2-4.new/Manager.h 2007-06-30 16:56:10.000000000 +0200
+@@ -85,7 +85,7 @@
+
+ static Boolean m_initialising;
+ static int errorHandler(Display *, XErrorEvent *);
+- static void sigHandler();
++ static void sigHandler(int);
+ static int m_signalled;
+
+ void initialiseScreen();
diff --git a/x11-wm/wm2/metadata.xml b/x11-wm/wm2/metadata.xml
new file mode 100644
index 000000000000..4538a68724a6
--- /dev/null
+++ b/x11-wm/wm2/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>maintainer-needed@gentoo.org</email></maintainer>
+</pkgmetadata>
diff --git a/x11-wm/wm2/wm2-4-r1.ebuild b/x11-wm/wm2/wm2-4-r1.ebuild
new file mode 100644
index 000000000000..e47f5ee40302
--- /dev/null
+++ b/x11-wm/wm2/wm2-4-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Small, unconfigurable window manager"
+HOMEPAGE="http://www.all-day-breakfast.com/wm2/"
+SRC_URI="http://www.all-day-breakfast.com/wm2/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="freedist"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+RDEPEND="x11-libs/libXmu"
+DEPEND="${RDEPEND}
+ x11-proto/xextproto"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-gentoo.patch"
+ sed -e "s/CFLAGS/CXXFLAGS/" \
+ -e "s/\$(CCC) -o/\$(CCC) \$(LDFLAGS) -o/" \
+ -i Makefile || die #334681
+
+ sed 's/^#//' Config.h > wm2.conf
+ if [ -e "/etc/wm2.conf" ]; then
+ echo "#undef _CONFIG_H_" >> Config.h
+ awk '/^[^/]/{print "#" $0}' /etc/wm2.conf >> Config.h
+ fi
+}
+
+src_compile() {
+ emake \
+ CXXFLAGS="${CXXFLAGS}" \
+ CCC="$(tc-getCXX)" \
+ LDFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ dobin wm2
+ insinto /etc
+ doins wm2.conf
+ dodoc README
+}
+
+pkg_postinst() {
+ echo
+ elog "wm2 is unconfigurable after you have installed. If you want to"
+ elog "change settings of wm2, please have a look at /etc/wm2.conf"
+ elog "and rewrite it, then emerge wm2 again (wm2 ebuild uses settings"
+ elog "from that file automatically). If you think wm2 lacks some important"
+ elog "features that you want to use (such as background pixmaps),"
+ elog "consider using wmx, written by the same author."
+ echo
+}
diff --git a/x11-wm/wmfs/Manifest b/x11-wm/wmfs/Manifest
new file mode 100644
index 000000000000..c9f6b7288006
--- /dev/null
+++ b/x11-wm/wmfs/Manifest
@@ -0,0 +1 @@
+DIST wmfs-201003.tar.gz 59593 SHA256 d341c15a62998e0c9062168887232e1b5adcdc2092b74a7b825d416660777c4d SHA512 117a238d6a8d8d147291ec9fb4e0aaf2bf8bab8ea794cf00deeaeaac1df15f0122bc705cb1bff54abe80d7228a19e67a79e4b3e0de0ced82abaf98fab3778a90 WHIRLPOOL 908d96994501894099a16996260e77223a7c701ea5bd165046a79144c6db2fdce3d7e0ecbad21e55017c30857588e90e077d64d1a481c7ee37b2ba04ce0a1efb
diff --git a/x11-wm/wmfs/files/wmfs-201003-desktop.patch b/x11-wm/wmfs/files/wmfs-201003-desktop.patch
new file mode 100644
index 000000000000..91edac6d88be
--- /dev/null
+++ b/x11-wm/wmfs/files/wmfs-201003-desktop.patch
@@ -0,0 +1,9 @@
+--- a/wmfs.desktop
++++ b/wmfs.desktop
+@@ -1,5 +1,4 @@
+-[Desktop Entry]
+-Encoding=UTF-8
++[Desktop Entry]
+ Name=wmfs
+ Comment=Window manager from scratch
+ TryExec=wmfs
diff --git a/x11-wm/wmfs/files/wmfs-201003-pthread.patch b/x11-wm/wmfs/files/wmfs-201003-pthread.patch
new file mode 100644
index 000000000000..cbbf6343bdfb
--- /dev/null
+++ b/x11-wm/wmfs/files/wmfs-201003-pthread.patch
@@ -0,0 +1,12 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -94,7 +92,8 @@
+ set(LIBRARIES_TO_LINK
+ ${FREETYPE_LIBRARIES}
+ ${X11_LIBRARIES}
+- Xft)
++ Xft
++ pthread)
+
+ # Includes
+ include(FindDoxygen)
diff --git a/x11-wm/wmfs/files/wmfs-99999999-desktop.patch b/x11-wm/wmfs/files/wmfs-99999999-desktop.patch
new file mode 100644
index 000000000000..5a1514407e43
--- /dev/null
+++ b/x11-wm/wmfs/files/wmfs-99999999-desktop.patch
@@ -0,0 +1,8 @@
+--- a/wmfs.desktop
++++ b/wmfs.desktop
+@@ -1,5 +1,4 @@
+ [Desktop Entry]
+-Encoding=UTF-8
+ Type=Application
+ Name=wmfs
+ Comment=Window Manager From Scratch
diff --git a/x11-wm/wmfs/metadata.xml b/x11-wm/wmfs/metadata.xml
new file mode 100644
index 000000000000..5abc59f0e650
--- /dev/null
+++ b/x11-wm/wmfs/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+<email>jer@gentoo.org</email>
+</maintainer>
+<use>
+<flag name='imlib2'>Enable image support through <pkg>media-libs/imlib2</pkg></flag>
+</use>
+<upstream>
+<remote-id type="github">xorg62/wmfs</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/x11-wm/wmfs/wmfs-201003.ebuild b/x11-wm/wmfs/wmfs-201003.ebuild
new file mode 100644
index 000000000000..36f2b31e9046
--- /dev/null
+++ b/x11-wm/wmfs/wmfs-201003.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit cmake-utils eutils
+
+DESCRIPTION="Window Manager From Scratch, A tiling window manager highly configurable"
+HOMEPAGE="https://github.com/xorg62/wmfs"
+SRC_URI="${HOMEPAGE}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ media-libs/freetype
+ media-libs/imlib2[X]
+ x11-libs/libX11
+ x11-libs/libXft
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+"
+DEPEND="
+ ${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/randrproto
+ x11-proto/xineramaproto
+ x11-proto/xproto
+"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${PN}-201003-desktop.patch \
+ "${FILESDIR}"/${PN}-201003-pthread.patch
+}
+
+src_install() {
+ cmake-utils_src_install
+ rm -r "${D}"/usr/share/${PN}
+ dodoc README TODO rc/status.sh
+}
diff --git a/x11-wm/wmfs/wmfs-99999999.ebuild b/x11-wm/wmfs/wmfs-99999999.ebuild
new file mode 100644
index 000000000000..cf1658314a46
--- /dev/null
+++ b/x11-wm/wmfs/wmfs-99999999.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils git-r3
+
+DESCRIPTION="Window Manager From Scratch, A tiling window manager highly configurable"
+HOMEPAGE="https://github.com/xorg62/wmfs"
+EGIT_REPO_URI="${HOMEPAGE}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS=""
+IUSE="+imlib2 +xinerama"
+
+RDEPEND="
+ media-libs/freetype
+ media-libs/imlib2[X]
+ x11-libs/libX11
+ x11-libs/libXft
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+"
+DEPEND="
+ ${RDEPEND}
+ virtual/pkgconfig
+ x11-proto/randrproto
+ x11-proto/xineramaproto
+ x11-proto/xproto
+"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${PN}-99999999-desktop.patch
+
+ sed -i -e '/^which dpkg/s|.*|false|g' configure || die
+}
+
+src_configure() {
+ # not autotools based
+ local ECHO
+ for ECHO in echo ''; do
+ ${ECHO} sh configure \
+ $(usex xinerama '' --without-xinerama) \
+ $(usex imlib2 '' --without-imlib2) \
+ --prefix /usr \
+ --man-prefix /usr/share/man \
+ --xdg-config-dir /etc/xdg \
+ || die
+ done
+}
+
+src_install() {
+ default
+ rm -r "${D}"/usr/share/${PN}
+ dodoc README
+}
diff --git a/x11-wm/wmii/Manifest b/x11-wm/wmii/Manifest
new file mode 100644
index 000000000000..22036072c585
--- /dev/null
+++ b/x11-wm/wmii/Manifest
@@ -0,0 +1 @@
+DIST wmii+ixp-3.9.2.tbz 432032 SHA256 0466f1a5c534b0ee9fdace2c7a2d251845b7ec0ae80bdb8e68ae6584ebeebf2b SHA512 c75d6d3f80e2b263c8d7b9eb6d0e700a1ad642209fc0984908e9399d22372c6c0572f47ab61881d5d56c4cc4eeb2914a545f6af1bbb936b65848764577d75761 WHIRLPOOL 241d72da4cc1d55772f04143a4696a12a013870d1aa63b622fa086a85b093a66d343dee2414d7f121ff13321bc0dfaf3bb60180c2f8ef58bd3357e12fcc64686
diff --git a/x11-wm/wmii/files/wmii.desktop b/x11-wm/wmii/files/wmii.desktop
new file mode 100644
index 000000000000..45dc8235e17b
--- /dev/null
+++ b/x11-wm/wmii/files/wmii.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=wmii
+Comment=window manager improved 2
+Exec=wmii
+TryExec=wmii
+Icon=
+Type=Application
diff --git a/x11-wm/wmii/metadata.xml b/x11-wm/wmii/metadata.xml
new file mode 100644
index 000000000000..874e3abac105
--- /dev/null
+++ b/x11-wm/wmii/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer><email>maintainer-needed@gentoo.org</email></maintainer>
+ <longdescription lang="en">
+ wmii is a dynamic window manager for X11. It is highly customizable and
+ usable with keyboard and mouse. It supports conventional, tabbed and
+ tiled window management and has a small memory footprint. It is highly
+ modularized and uses an inter-process communication interface which
+ conforms to the 9P2000 protocol introduced by the Plan 9 operating
+ system.
+ </longdescription>
+</pkgmetadata>
+
diff --git a/x11-wm/wmii/wmii-3.9.2-r4.ebuild b/x11-wm/wmii/wmii-3.9.2-r4.ebuild
new file mode 100644
index 000000000000..4ec8fb279fb6
--- /dev/null
+++ b/x11-wm/wmii/wmii-3.9.2-r4.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit flag-o-matic multilib toolchain-funcs
+
+MY_P=wmii+ixp-${PV}
+
+DESCRIPTION="A dynamic window manager for X11"
+HOMEPAGE="http://wmii.suckless.org/"
+SRC_URI="http://dl.suckless.org/wmii/${MY_P}.tbz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~x86-fbsd"
+IUSE=""
+
+COMMON_DEPEND="
+ >=sys-libs/libixp-0.5_p20110208-r3
+ x11-libs/libXft
+ x11-libs/libXext
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libX11
+ x11-libs/libXinerama
+ >=media-libs/freetype-2
+"
+RDEPEND="${COMMON_DEPEND}
+ x11-apps/xmessage
+ x11-apps/xsetroot
+ media-fonts/font-misc-misc
+"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+"
+
+S=${WORKDIR}/${MY_P}
+
+# Force dynamic linking, bug #273332
+MAKEOPTS="${MAKEOPTS} STATIC= -j1"
+
+src_prepare() {
+ mywmiiconf=(
+ PREFIX=/usr
+ DOC=/usr/share/doc/${PF}
+ ETC=/etc
+ LIBDIR=/usr/$(get_libdir)
+ CC="$(tc-getCC) -c"
+ LD="$(tc-getCC)"
+ AR="$(tc-getAR) crs"
+ DESTDIR="${D}"
+ LIBIXP=/usr/$(get_libdir)/libixp.so
+ )
+
+ # punt internal copy of sys-libs/libixp #323037
+ rm -f include/ixp{,_srvutil}.h || die
+ sed -i -e '/libixp/d' Makefile || die
+
+ sed -i -e "/BINSH \!=/d" mk/hdr.mk || die #335083
+ sed -i -e 's/-lXext/& -lXrender -lX11/' cmd/Makefile || die #369115
+}
+
+src_compile() {
+ append-flags -I/usr/include/freetype2
+ emake "${mywmiiconf[@]}"
+}
+
+src_install() {
+ emake "${mywmiiconf[@]}" install
+ dodoc NEWS NOTES README TODO
+
+ echo wmii > "${T}"/wmii
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/wmii
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}"/${PN}.desktop
+}
diff --git a/x11-wm/xmonad-contrib/Manifest b/x11-wm/xmonad-contrib/Manifest
new file mode 100644
index 000000000000..655e92802a5c
--- /dev/null
+++ b/x11-wm/xmonad-contrib/Manifest
@@ -0,0 +1,2 @@
+DIST xmonad-contrib-0.11.2.tar.gz 401758 SHA256 515d87838ad1f9622d0b491390c5961318d2cb84c96410dee91b5653c5388c62 SHA512 373e1ed1744cbdf26902402d74b4efafa043a4ccf1953c26ec55a03ef8de31818b0c4cfced08b43e664e5f052e52923c6dfb08d68be86726e9f0ed1d96ad7910 WHIRLPOOL 8356462938d9565ee010335c90646d5f23adf3b830bbf7727ef8fa89ff6c027ff94be44b99260ae3c57f9773b6cf985029ba2f183cc7b8c9e18d18fd260f90a9
+DIST xmonad-contrib-0.11.4.tar.gz 401743 SHA256 a379b3d4f2d3d8793d6c76812e90cbb055fa0598cfba944af47139bb77e2acbc SHA512 3d747988baa497475255be4cc96f7eba5cf6fc81658f8f877ca92148fb9a154423ee98ebeb23690de00b186d2e34ad13d94cf1fe332d4ca4f1f4a64790e46ed7 WHIRLPOOL 1f25fff0088f15942bddd6a8e285fcf283f723527cc10b120c81cbb9a74a56106d5f7c5f676cf6b3fcd118bc3843e510169161898267f160c73b35c0fba458df
diff --git a/x11-wm/xmonad-contrib/files/xmonad-contrib-0.11.2-ghc-7.8.patch b/x11-wm/xmonad-contrib/files/xmonad-contrib-0.11.2-ghc-7.8.patch
new file mode 100644
index 000000000000..67e1f8cd8def
--- /dev/null
+++ b/x11-wm/xmonad-contrib/files/xmonad-contrib-0.11.2-ghc-7.8.patch
@@ -0,0 +1,23 @@
+Sun Feb 17 19:33:56 FET 2013 Adam Vogt <vogt.adam@gmail.com>
+ * Remove unnecessary contexts from L.MultiToggle
+diff -rN -u old-XMonadContrib/XMonad/Layout/MultiToggle.hs new-XMonadContrib/XMonad/Layout/MultiToggle.hs
+--- old-XMonadContrib/XMonad/Layout/MultiToggle.hs 2014-02-06 00:58:32.422844682 +0300
++++ new-XMonadContrib/XMonad/Layout/MultiToggle.hs 2014-02-06 00:58:32.462844684 +0300
+@@ -99,7 +99,7 @@
+ transform :: (LayoutClass l a) => t -> l a ->
+ (forall l'. (LayoutClass l' a) => l' a -> (l' a -> l a) -> b) -> b
+
+-data (LayoutClass l a) => EL l a = forall l'. (LayoutClass l' a) => EL (l' a) (l' a -> l a)
++data EL l a = forall l'. (LayoutClass l' a) => EL (l' a) (l' a -> l a)
+
+ unEL :: (LayoutClass l a) => EL l a -> (forall l'. (LayoutClass l' a) => l' a -> b) -> b
+ unEL (EL x _) k = k x
+@@ -159,7 +159,7 @@
+ infixr 0 ??
+ -- | Prepend an element to a heterogeneous list. Used to build transformer
+ -- tables for 'mkToggle'.
+-(??) :: (HList b w) => a -> b -> HCons a b
++(??) :: a -> b -> HCons a b
+ (??) = HCons
+
+ -- | Construct a singleton transformer table.
diff --git a/x11-wm/xmonad-contrib/files/xmonad-contrib-0.11.4-import-Applicative.patch b/x11-wm/xmonad-contrib/files/xmonad-contrib-0.11.4-import-Applicative.patch
new file mode 100644
index 000000000000..d887e857da03
--- /dev/null
+++ b/x11-wm/xmonad-contrib/files/xmonad-contrib-0.11.4-import-Applicative.patch
@@ -0,0 +1,21 @@
+--- xmonad-contrib-0.11.4-orig/XMonad/Util/Invisible.hs 2015-03-28 05:00:21.000000000 +1100
++++ xmonad-contrib-0.11.4/XMonad/Util/Invisible.hs 2015-04-03 15:12:17.485143018 +1100
+@@ -22,6 +22,8 @@
+ , fromIMaybe
+ ) where
+
++import Control.Applicative
++
+ -- $usage
+ -- A wrapper data type to store layout state that shouldn't be persisted across
+ -- restarts. A common wrapped type to use is @Maybe a@.
+--- xmonad-contrib-0.11.4-orig/XMonad/Hooks/DebugEvents.hs 2015-03-28 05:00:21.000000000 +1100
++++ xmonad-contrib-0.11.4/XMonad/Hooks/DebugEvents.hs 2015-04-03 15:17:02.207816322 +1100
+@@ -30,6 +30,7 @@
+
+ -- import Graphics.X11.Xlib.Extras.GetAtomName (getAtomName)
+
++import Control.Applicative
+ import Control.Exception.Extensible as E
+ import Control.Monad.State
+ import Control.Monad.Reader
diff --git a/x11-wm/xmonad-contrib/metadata.xml b/x11-wm/xmonad-contrib/metadata.xml
new file mode 100644
index 000000000000..c1b67d9543c0
--- /dev/null
+++ b/x11-wm/xmonad-contrib/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>haskell</herd>
+ <maintainer>
+ <email>haskell@gentoo.org</email>
+ </maintainer>
+ <longdescription>
+ Third party tiling algorithms, configurations and scripts to xmonad,
+ a tiling window manager for X.
+
+ For an introduction to building, configuring and using xmonad
+ extensions, see &quot;XMonad.Doc&quot;. In particular:
+
+ &quot;XMonad.Doc.Configuring&quot;, a guide to configuring xmonad
+
+ &quot;XMonad.Doc.Extending&quot;, using the contributed extensions library
+
+ &quot;XMonad.Doc.Developing&quot;, introduction to xmonad internals and writing
+ your own extensions.
+
+ </longdescription>
+</pkgmetadata>
diff --git a/x11-wm/xmonad-contrib/xmonad-contrib-0.11.2.ebuild b/x11-wm/xmonad-contrib/xmonad-contrib-0.11.2.ebuild
new file mode 100644
index 000000000000..721671882a71
--- /dev/null
+++ b/x11-wm/xmonad-contrib/xmonad-contrib-0.11.2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+# ebuild generated by hackport 0.3.2.9999
+
+CABAL_FEATURES="lib profile haddock hoogle hscolour"
+inherit base haskell-cabal
+
+DESCRIPTION="Third party extensions for xmonad"
+HOMEPAGE="http://xmonad.org/"
+SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~ppc64 x86"
+# hackport-args: --always-disabled='testing'
+IUSE="+xft"
+
+RDEPEND="dev-haskell/extensible-exceptions:=[profile?]
+ >=dev-haskell/mtl-1:=[profile?]
+ <dev-haskell/mtl-3:=[profile?]
+ dev-haskell/random:=[profile?]
+ dev-haskell/utf8-string:=[profile?]
+ >=dev-haskell/x11-1.6.1:=[profile?]
+ <dev-haskell/x11-1.7:=[profile?]
+ >=dev-lang/ghc-6.10.4:=
+ =x11-wm/xmonad-0.11*:=[profile?]
+ xft? ( >=dev-haskell/x11-xft-0.2:=[profile?]
+ )"
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.6"
+
+PATCHES=("${FILESDIR}"/${P}-ghc-7.8.patch)
+
+src_configure() {
+ haskell-cabal_src_configure \
+ --flags=-testing \
+ $(cabal_flag xft use_xft)
+}
diff --git a/x11-wm/xmonad-contrib/xmonad-contrib-0.11.4.ebuild b/x11-wm/xmonad-contrib/xmonad-contrib-0.11.4.ebuild
new file mode 100644
index 000000000000..f25ae07f9fc6
--- /dev/null
+++ b/x11-wm/xmonad-contrib/xmonad-contrib-0.11.4.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+# ebuild generated by hackport 0.4.4.9999
+#hackport: flags: -testing,use_xft:xft
+
+CABAL_FEATURES="lib profile haddock hoogle hscolour"
+inherit eutils haskell-cabal
+
+DESCRIPTION="Third party extensions for xmonad"
+HOMEPAGE="http://xmonad.org/"
+SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~ppc64 ~x86"
+IUSE="+xft"
+
+RDEPEND="dev-haskell/extensible-exceptions:=[profile?]
+ >=dev-haskell/mtl-1:=[profile?] <dev-haskell/mtl-3:=[profile?]
+ dev-haskell/old-locale:=[profile?]
+ dev-haskell/old-time:=[profile?]
+ dev-haskell/random:=[profile?]
+ dev-haskell/utf8-string:=[profile?]
+ >=dev-haskell/x11-1.6.1:=[profile?] <dev-haskell/x11-1.7:=[profile?]
+ >=dev-lang/ghc-7.4.1:=
+ >=x11-wm/xmonad-0.11:=[profile?] <x11-wm/xmonad-0.12:=[profile?]
+ xft? ( >=dev-haskell/x11-xft-0.2:=[profile?] )
+"
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.6
+"
+
+src_prepare() {
+ # Upstream bug 597 xmonad-contrib-0.11.4 does not compile
+ # https://code.google.com/p/xmonad/issues/detail?id=597
+ epatch "${FILESDIR}"/${P}-import-Applicative.patch
+
+ # https://ghc.haskell.org/trac/ghc/ticket/10667
+ [[ $(ghc-version) == 7.10.1.20150630 ]] && replace-hcflags -g ''
+ [[ $(ghc-version) == 7.10.2 ]] && replace-hcflags -g ''
+}
+
+src_configure() {
+ haskell-cabal_src_configure \
+ --flag=-testing \
+ $(cabal_flag xft use_xft)
+}
diff --git a/x11-wm/xmonad/Manifest b/x11-wm/xmonad/Manifest
new file mode 100644
index 000000000000..e2d8ead4b4c7
--- /dev/null
+++ b/x11-wm/xmonad/Manifest
@@ -0,0 +1,2 @@
+DIST xmonad-0.11.1.tar.gz 59307 SHA256 39e0bf227df782d7a5799c811ad0d8b70c9d6eaaa94e8cc395fcf25895d6d2dd SHA512 4916451d81d359dbbf508f3b20f649f956255f526f14b1eb6c0d32bc789474db30d7acac768663ca32784c7fe361195a50f45a7cb7371ee9a29c9b8f1c64d528 WHIRLPOOL 5707bd5763f525b196deea6ead806af74707e2bbd31ff67039b292f3b97f607c2351ef45e57373f0f7313e5c307335cb5f4a84820d8e658b7d864927f109891c
+DIST xmonad-0.11.tar.gz 59119 SHA256 e5bd36d5184facad66acf2688b02922bfc6de32b576758f4b00688253c425bdb SHA512 34740f032508584f34f6b138d21394eca17e8020bccc4d8c6e8b3cb6b7ca64b153077cfd16636a6130768ebd145fe993569f8a229862d7816d0c89c905ee08bc WHIRLPOOL 9bab495c4094f21427afa797f97b6af13d9c156484b33087b6378191b0d99255f070adc09df3da9eba3ff55a59a8f03830110a4ab2aa9ad9d93d2f1a35d5dc54
diff --git a/x11-wm/xmonad/files/xmonad-0.11-ghc-7.10.patch b/x11-wm/xmonad/files/xmonad-0.11-ghc-7.10.patch
new file mode 100644
index 000000000000..e92a31ec7044
--- /dev/null
+++ b/x11-wm/xmonad/files/xmonad-0.11-ghc-7.10.patch
@@ -0,0 +1,14 @@
+Fri May 2 06:57:43 BST 2014 Adam Vogt <vogt.adam@gmail.com>
+ * derive Applicative instance for Query
+diff -rN -u old-xmonad/XMonad/Core.hs new-xmonad/XMonad/Core.hs
+--- old-xmonad/XMonad/Core.hs 2015-01-08 21:40:45.320979242 +0000
++++ new-xmonad/XMonad/Core.hs 2015-01-08 21:40:45.367979193 +0000
+@@ -155,7 +155,7 @@
+
+ type ManageHook = Query (Endo WindowSet)
+ newtype Query a = Query (ReaderT Window X a)
+- deriving (Functor, Monad, MonadReader Window, MonadIO)
++ deriving (Functor, Applicative, Monad, MonadReader Window, MonadIO)
+
+ runQuery :: Query a -> Window -> X a
+ runQuery (Query m) w = runReaderT m w
diff --git a/x11-wm/xmonad/files/xmonad-0.11-sample.patch b/x11-wm/xmonad/files/xmonad-0.11-sample.patch
new file mode 100644
index 000000000000..0780af8c18d4
--- /dev/null
+++ b/x11-wm/xmonad/files/xmonad-0.11-sample.patch
@@ -0,0 +1,74 @@
+Sun Jan 6 17:42:54 GMT 2013 Daniel Wagner <daniel@wagner-home.com>
+ * define the "help" string in the sample configuration bundled with xmonad
+diff -rN -u old-xmonad/man/xmonad.hs new-xmonad/man/xmonad.hs
+--- old-xmonad/man/xmonad.hs 2015-02-27 08:38:26.993365307 +0000
++++ new-xmonad/man/xmonad.hs 2015-02-27 08:38:27.046365303 +0000
+@@ -280,3 +280,54 @@
+ logHook = myLogHook,
+ startupHook = myStartupHook
+ }
++
++-- | Finally, a copy of the default bindings in simple textual tabular format.
++help :: String
++help = unlines ["The default modifier key is 'alt'. Default keybindings:",
++ "",
++ "-- launching and killing programs",
++ "mod-Shift-Enter Launch xterminal",
++ "mod-p Launch dmenu",
++ "mod-Shift-p Launch gmrun",
++ "mod-Shift-c Close/kill the focused window",
++ "mod-Space Rotate through the available layout algorithms",
++ "mod-Shift-Space Reset the layouts on the current workSpace to default",
++ "mod-n Resize/refresh viewed windows to the correct size",
++ "",
++ "-- move focus up or down the window stack",
++ "mod-Tab Move focus to the next window",
++ "mod-Shift-Tab Move focus to the previous window",
++ "mod-j Move focus to the next window",
++ "mod-k Move focus to the previous window",
++ "mod-m Move focus to the master window",
++ "",
++ "-- modifying the window order",
++ "mod-Return Swap the focused window and the master window",
++ "mod-Shift-j Swap the focused window with the next window",
++ "mod-Shift-k Swap the focused window with the previous window",
++ "",
++ "-- resizing the master/slave ratio",
++ "mod-h Shrink the master area",
++ "mod-l Expand the master area",
++ "",
++ "-- floating layer support",
++ "mod-t Push window back into tiling; unfloat and re-tile it",
++ "",
++ "-- increase or decrease number of windows in the master area",
++ "mod-comma (mod-,) Increment the number of windows in the master area",
++ "mod-period (mod-.) Deincrement the number of windows in the master area",
++ "",
++ "-- quit, or restart",
++ "mod-Shift-q Quit xmonad",
++ "mod-q Restart xmonad",
++ "mod-[1..9] Switch to workSpace N",
++ "",
++ "-- Workspaces & screens",
++ "mod-Shift-[1..9] Move client to workspace N",
++ "mod-{w,e,r} Switch to physical/Xinerama screens 1, 2, or 3",
++ "mod-Shift-{w,e,r} Move client to screen 1, 2, or 3",
++ "",
++ "-- Mouse bindings: default actions bound to mouse events",
++ "mod-button1 Set the window to floating mode and move by dragging",
++ "mod-button2 Raise the window to the top of the stack",
++ "mod-button3 Set the window to floating mode and resize by dragging"]
+Sun Jan 6 17:44:14 GMT 2013 Daniel Wagner <daniel@wagner-home.com>
+ * use "modm" instead of "modMask" in the sample config
+diff -rN -u old-xmonad/man/xmonad.hs new-xmonad/man/xmonad.hs
+--- old-xmonad/man/xmonad.hs 2015-02-27 08:39:59.280358012 +0000
++++ new-xmonad/man/xmonad.hs 2015-02-27 08:39:59.333358007 +0000
+@@ -129,7 +129,7 @@
+ , ((modm , xK_q ), spawn "xmonad --recompile; xmonad --restart")
+
+ -- Run xmessage with a summary of the default keybindings (useful for beginners)
+- , ((modMask .|. shiftMask, xK_slash ), spawn ("echo \"" ++ help ++ "\" | xmessage -file -"))
++ , ((modm .|. shiftMask, xK_slash ), spawn ("echo \"" ++ help ++ "\" | xmessage -file -"))
+ ]
+ ++
+
diff --git a/x11-wm/xmonad/files/xmonad-check-repeat.patch b/x11-wm/xmonad/files/xmonad-check-repeat.patch
new file mode 100644
index 000000000000..9b30cb5ece31
--- /dev/null
+++ b/x11-wm/xmonad/files/xmonad-check-repeat.patch
@@ -0,0 +1,40 @@
+--- xmonad//XMonad/Core.hs 2010-09-05 05:11:42.000000000 +0400
++++ xmonad//XMonad/Core.hs 2010-09-18 07:59:14.000000000 +0400
+@@ -65,6 +65,7 @@
+ , waitingUnmap :: !(M.Map Window Int) -- ^ the number of expected UnmapEvents
+ , dragging :: !(Maybe (Position -> Position -> X (), X ()))
+ , numberlockMask :: !KeyMask -- ^ The numlock modifier
++ , keyPressed :: !KeyCode -- ^ keycode of the key being pressed if any
+ , extensibleState :: !(M.Map String (Either String StateExtension))
+ -- ^ stores custom state information.
+ --
+--- xmonad//XMonad/Main.hsc 2010-09-05 05:11:42.000000000 +0400
++++ xmonad//XMonad/Main.hsc 2010-09-18 08:03:11.000000000 +0400
+@@ -129,6 +129,7 @@
+ , mapped = S.empty
+ , waitingUnmap = M.empty
+ , dragging = Nothing
++ , keyPressed = 0
+ , extensibleState = extState
+ }
+ allocaXEvent $ \e ->
+@@ -190,10 +191,15 @@
+ -- run window manager command
+ handle (KeyEvent {ev_event_type = t, ev_state = m, ev_keycode = code})
+ | t == keyPress = withDisplay $ \dpy -> do
+- s <- io $ keycodeToKeysym dpy code 0
+- mClean <- cleanMask m
+- ks <- asks keyActions
+- userCodeDef () $ whenJust (M.lookup (mClean, s) ks) id
++ kp <- gets keyPressed
++ if kp /= code then do
++ modify $ \s -> s { keyPressed = code }
++ s <- io $ keycodeToKeysym dpy code 0
++ mClean <- cleanMask m
++ ks <- asks keyActions
++ userCodeDef () $ whenJust (M.lookup (mClean, s) ks) id
++ else return ()
++ | t == keyRelease = modify $ \s -> s { keyPressed = 0 }
+
+ -- manage a new window
+ handle (MapRequestEvent {ev_window = w}) = withDisplay $ \dpy -> do
diff --git a/x11-wm/xmonad/files/xmonad.desktop b/x11-wm/xmonad/files/xmonad.desktop
new file mode 100644
index 000000000000..d72fc71866a2
--- /dev/null
+++ b/x11-wm/xmonad/files/xmonad.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=xmonad
+Comment=A lightweight window manager
+Exec=/etc/X11/Sessions/xmonad
+TryExec=xmonad
+Icon=
+Type=Application
diff --git a/x11-wm/xmonad/metadata.xml b/x11-wm/xmonad/metadata.xml
new file mode 100644
index 000000000000..c5471239194d
--- /dev/null
+++ b/x11-wm/xmonad/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>haskell</herd>
+ <use>
+ <flag name='default-term'>Pull terminal specified in default xmonad config
+ to be a bit less hostile by default.</flag>
+ <flag name="no-autorepeat-keys">Allow ignoring of keyboard autorepeat.</flag>
+ </use>
+ <longdescription>
+ xmonad is a tiling window manager for X. Windows are arranged
+ automatically to tile the screen without gaps or overlap, maximising
+ screen use. All features of the window manager are accessible from
+ the keyboard: a mouse is strictly optional. xmonad is written and
+ extensible in Haskell. Custom layout algorithms, and other
+ extensions, may be written by the user in config files. Layouts are
+ applied dynamically, and different layouts may be used on each
+ workspace. Xinerama is fully supported, allowing windows to be tiled
+ on several screens.
+ </longdescription>
+</pkgmetadata>
diff --git a/x11-wm/xmonad/xmonad-0.11-r1.ebuild b/x11-wm/xmonad/xmonad-0.11-r1.ebuild
new file mode 100644
index 000000000000..e7ae14bf6878
--- /dev/null
+++ b/x11-wm/xmonad/xmonad-0.11-r1.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+# ebuild generated by hackport 0.3.1
+
+CABAL_FEATURES="bin lib profile haddock hscolour hoogle"
+inherit haskell-cabal
+
+DESCRIPTION="A tiling window manager"
+HOMEPAGE="http://xmonad.org"
+SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~ppc64 ~sparc x86"
+IUSE="+default-term"
+
+RDEPEND="dev-haskell/extensible-exceptions:=[profile?]
+ dev-haskell/mtl:=[profile?]
+ =dev-haskell/utf8-string-0.3*:=[profile?]
+ >=dev-haskell/x11-1.5:=[profile?]
+ <dev-haskell/x11-1.7:=[profile?]
+ >=dev-lang/ghc-6.10.4:="
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.6"
+PDEPEND="default-term? ( x11-terms/xterm )
+ x11-apps/xmessage
+"
+
+SAMPLE_CONFIG="xmonad.hs"
+SAMPLE_CONFIG_LOC="man"
+
+src_prepare() {
+ # allow user patches
+ epatch_user
+}
+
+src_install() {
+ cabal_src_install
+
+ echo -e "#!/bin/sh\n/usr/bin/xmonad" > "${T}/${PN}"
+ exeinto /etc/X11/Sessions
+ doexe "${T}/${PN}"
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/${PN}.desktop"
+
+ doman man/xmonad.1
+ dohtml man/xmonad.1.html
+
+ dodoc CONFIG README
+}
+
+pkg_postinst() {
+ ghc-package_pkg_postinst
+
+ elog "A sample ${SAMPLE_CONFIG} configuration file can be found here:"
+ elog " /usr/share/${PF}/ghc-$(ghc-version)/${SAMPLE_CONFIG_LOC}/${SAMPLE_CONFIG}"
+ elog "The parameters in this file are the defaults used by xmonad."
+ elog "To customize xmonad, copy this file to:"
+ elog " ~/.xmonad/${SAMPLE_CONFIG}"
+ elog "After editing, use 'mod-q' to dynamically restart xmonad "
+ elog "(where the 'mod' key defaults to 'Alt')."
+ elog ""
+ elog "Read the README or man page for more information, and to see "
+ elog "other possible configurations go to:"
+ elog " http://haskell.org/haskellwiki/Xmonad/Config_archive"
+ elog "Please note that many of these configurations will require the "
+ elog "x11-wm/xmonad-contrib package to be installed."
+}
diff --git a/x11-wm/xmonad/xmonad-0.11-r3.ebuild b/x11-wm/xmonad/xmonad-0.11-r3.ebuild
new file mode 100644
index 000000000000..e94fa77939f1
--- /dev/null
+++ b/x11-wm/xmonad/xmonad-0.11-r3.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+# ebuild generated by hackport 0.3.1
+
+CABAL_FEATURES="bin lib profile haddock hscolour hoogle"
+inherit haskell-cabal
+
+DESCRIPTION="A tiling window manager"
+HOMEPAGE="http://xmonad.org"
+SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~ppc64 ~sparc ~x86"
+IUSE="+default-term no-autorepeat-keys"
+
+RDEPEND="dev-haskell/extensible-exceptions:=[profile?]
+ dev-haskell/mtl:=[profile?]
+ >=dev-haskell/utf8-string-0.3:=[profile?]
+ >=dev-haskell/x11-1.5:=[profile?]
+ <dev-haskell/x11-1.7:=[profile?]
+ >=dev-lang/ghc-6.10.4:="
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.6"
+PDEPEND="default-term? ( x11-terms/xterm )
+ x11-apps/xmessage
+"
+
+SAMPLE_CONFIG="xmonad.hs"
+SAMPLE_CONFIG_LOC="man"
+
+src_prepare() {
+ epatch "$FILESDIR"/${P}-ghc-7.10.patch
+ epatch "$FILESDIR"/${P}-sample.patch
+ use no-autorepeat-keys && epatch "$FILESDIR"/${PN}-check-repeat.patch
+
+ cabal_chdeps \
+ "utf8-string >= 0.3 && < 0.4" "utf8-string >= 0.3 && < 1.1"
+
+ # allow user patches
+ epatch_user
+}
+
+src_install() {
+ cabal_src_install
+
+ echo -e "#!/bin/sh\n/usr/bin/xmonad" > "${T}/${PN}"
+ exeinto /etc/X11/Sessions
+ doexe "${T}/${PN}"
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/${PN}.desktop"
+
+ doman man/xmonad.1
+ dohtml man/xmonad.1.html
+
+ dodoc CONFIG README
+}
+
+pkg_postinst() {
+ ghc-package_pkg_postinst
+
+ elog "A sample ${SAMPLE_CONFIG} configuration file can be found here:"
+ elog " /usr/share/${PF}/ghc-$(ghc-version)/${SAMPLE_CONFIG_LOC}/${SAMPLE_CONFIG}"
+ elog "The parameters in this file are the defaults used by xmonad."
+ elog "To customize xmonad, copy this file to:"
+ elog " ~/.xmonad/${SAMPLE_CONFIG}"
+ elog "After editing, use 'mod-q' to dynamically restart xmonad "
+ elog "(where the 'mod' key defaults to 'Alt')."
+ elog ""
+ elog "Read the README or man page for more information, and to see "
+ elog "other possible configurations go to:"
+ elog " http://haskell.org/haskellwiki/Xmonad/Config_archive"
+ elog "Please note that many of these configurations will require the "
+ elog "x11-wm/xmonad-contrib package to be installed."
+}
diff --git a/x11-wm/xmonad/xmonad-0.11.1.ebuild b/x11-wm/xmonad/xmonad-0.11.1.ebuild
new file mode 100644
index 000000000000..97e372501899
--- /dev/null
+++ b/x11-wm/xmonad/xmonad-0.11.1.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+# ebuild generated by hackport 0.4.4.9999
+
+CABAL_FEATURES="bin lib profile haddock hoogle hscolour"
+inherit haskell-cabal
+
+DESCRIPTION="A tiling window manager"
+HOMEPAGE="http://xmonad.org"
+SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~ppc64 ~sparc ~x86"
+IUSE="+default-term no-autorepeat-keys"
+
+RDEPEND="dev-haskell/extensible-exceptions:=[profile?]
+ dev-haskell/mtl:=[profile?]
+ >=dev-haskell/utf8-string-0.3:=[profile?]
+ >=dev-haskell/x11-1.5:=[profile?] <dev-haskell/x11-1.7:=[profile?]
+ >=dev-lang/ghc-7.4.1:=
+"
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.6
+"
+PDEPEND="default-term? ( x11-terms/xterm )
+ x11-apps/xmessage
+"
+
+SAMPLE_CONFIG="xmonad.hs"
+SAMPLE_CONFIG_LOC="man"
+
+src_prepare() {
+ epatch "$FILESDIR"/${PN}-0.11-sample.patch
+ use no-autorepeat-keys && epatch "$FILESDIR"/${PN}-check-repeat.patch
+
+ cabal_chdeps \
+ "utf8-string >= 0.3 && < 0.4" "utf8-string >= 0.3 && < 1.1"
+
+ # allow user patches
+ epatch_user
+}
+
+src_install() {
+ cabal_src_install
+
+ echo -e "#!/bin/sh\n/usr/bin/xmonad" > "${T}/${PN}"
+ exeinto /etc/X11/Sessions
+ doexe "${T}/${PN}"
+
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/${PN}.desktop"
+
+ doman man/xmonad.1
+ dohtml man/xmonad.1.html
+
+ dodoc CONFIG README
+}
+
+pkg_postinst() {
+ ghc-package_pkg_postinst
+
+ elog "A sample ${SAMPLE_CONFIG} configuration file can be found here:"
+ elog " /usr/share/${PF}/ghc-$(ghc-version)/${SAMPLE_CONFIG_LOC}/${SAMPLE_CONFIG}"
+ elog "The parameters in this file are the defaults used by xmonad."
+ elog "To customize xmonad, copy this file to:"
+ elog " ~/.xmonad/${SAMPLE_CONFIG}"
+ elog "After editing, use 'mod-q' to dynamically restart xmonad "
+ elog "(where the 'mod' key defaults to 'Alt')."
+ elog ""
+ elog "Read the README or man page for more information, and to see "
+ elog "other possible configurations go to:"
+ elog " http://haskell.org/haskellwiki/Xmonad/Config_archive"
+ elog "Please note that many of these configurations will require the "
+ elog "x11-wm/xmonad-contrib package to be installed."
+}
diff --git a/x11-wm/xpra/Manifest b/x11-wm/xpra/Manifest
new file mode 100644
index 000000000000..7b45b4ff72bf
--- /dev/null
+++ b/x11-wm/xpra/Manifest
@@ -0,0 +1,6 @@
+DIST xpra-0.11.6.tar.xz 928652 SHA256 8e67681bd6313049e2b452734459d65b16e8c08c6273abfccade91d868ce0aea SHA512 4d276d99bdb1c3f9c95e44720552e401d251511f6d90f7cc86cc655b0fd841b7a3fbc919dd091f67e50e2530abb5943c7af9b36477347b013efe58d55b87da30 WHIRLPOOL 5f44b2e850bf0a6d8ae4a25284d7b2adba3e0c50b1211e248472b1fa715ec907cf7e16724a2c89f7bed0e29cb7fd85e219d7aaf0e0b0a6b7daa160a6a1ab570a
+DIST xpra-0.12.7.tar.xz 982888 SHA256 906265da543d4346bfe5c17ea0848368e481c391fbb9583aefb37cafc3db6c32 SHA512 c144df93ba9ef004b8f2966fe7fdaa695342e91b5788e980860b82edd8f624c0dd2df6ad99860fc05e1b586db9223f59d3a04e338aea3bbec111b8abf17f70b1 WHIRLPOOL 139d9ffed14bda69ad3fd2eaf6d99c5d9d769740a5301d25959f192b36ac817cbb57295d03559f5fc7ea82f6613945c9bff19caf4fb63af0aaf910f1e421f172
+DIST xpra-0.13.9.tar.xz 1539976 SHA256 0d9a02c07bb500ad32e9c82d168d1b71d0f77ee070ca18fab0dc6cc2fc970104 SHA512 32d28df224ed6cc0cd4c0e51f58d81ce0a07de4cd09b142b7f09a9d023632e42ba1589f215d57d7e75e8922d0a1c023e0495b07f09aee3899f3cd6ae8de51ca0 WHIRLPOOL a401fa77e3404c6c1d748a02214c060df2078c199de1141c331251d7364028520f3408d99366c063a1fd64f8375037bfcbb89b0bced34477365512acfe69bb7b
+DIST xpra-0.14.27.tar.xz 1123504 SHA256 9d51d6e656a9afc6559ec4b671a706ba134257c8e6d909d2514a3ca653502efb SHA512 5f195b211b8e78091ba42661c08f367d66e2a34ebcea9e5df57f0408cf1c4232294d38692171abbfe7396a1da28b2cc4100252dc034872a278530c48282db5cf WHIRLPOOL b14d58cddd03093a598e99d69fb145a5a04347f48fc0ec0b0311efa7bc75f5a51be5db93a361032ead2e021d2c8ead13986a3bd7434108506bbc4b601556141b
+DIST xpra-0.15.3.tar.xz 1192372 SHA256 24a232d4d57626b05932086c97f20fbe5803ca649a1d71171e11400115c9e198 SHA512 194dcf97936ddecc8f2bd106275e6bf63334697be7b552eff54dcc152352bc92a4bd2ea0f69c56599085ca52fdcb1e4727156789d10a5a7c4ba380cdd8a0c256 WHIRLPOOL 6e04aa9ce38eea38a92c46b1af428e608b9eb2344e6199437b74089953b48ed5ef24a37f4ec315cc40eaeba4d244ab54b59ac6b369d833b1690877315cc36a1c
+DIST xpra-0.15.4.tar.xz 1194484 SHA256 29be80b8987dd131058aab0a1c8d456a7ac67ad56c54d2b5e72472ff003799a2 SHA512 3c0c3f9f5658fdb02d8c80efd5367c91cf771adf96d42f286e2079cb36b4446610e4e388bb7b241fa7704db4f621aac14959b04fe3466cf61b6a73d542971eb4 WHIRLPOOL 6646e889ea6a5e2eb1b6d0480b78f2ff3cf9c0ba5ccdca4531aa3b31e3f650f463a0da0d0013592586b2fc0c56d4a54385f4a38e921c7e62a4c706f6ad8b9d42
diff --git a/x11-wm/xpra/files/xpra-0.10.1-prefix.patch b/x11-wm/xpra/files/xpra-0.10.1-prefix.patch
new file mode 100644
index 000000000000..1e8e759abaca
--- /dev/null
+++ b/x11-wm/xpra/files/xpra-0.10.1-prefix.patch
@@ -0,0 +1,30 @@
+Index: xpra-0.10.1/setup.py
+===================================================================
+--- xpra-0.10.1.orig/setup.py
++++ xpra-0.10.1/setup.py
+@@ -896,8 +896,8 @@ else:
+ return {}
+ if "install" in sys.argv:
+ #prepare default [/usr/local]/etc configuration files:
+- if sys.prefix == '/usr':
+- etc_prefix = '/etc/xpra'
++ if sys.prefix[-4:] == '/usr':
++ etc_prefix = sys.prefix[:-4] + '/etc/xpra'
+ else:
+ etc_prefix = sys.prefix + '/etc/xpra'
+
+Index: xpra-0.10.1/xpra/scripts/config.py
+===================================================================
+--- xpra-0.10.1.orig/xpra/scripts/config.py
++++ xpra-0.10.1/xpra/scripts/config.py
+@@ -344,8 +344,8 @@ def read_xpra_defaults():
+ #first, read the global defaults:
+ if sys.platform.startswith("win"):
+ conf_dir = os.path.dirname(os.path.abspath(sys.executable))
+- elif sys.prefix == '/usr':
+- conf_dir = '/etc/xpra'
++ elif sys.prefix[-4:] == '/usr':
++ conf_dir = sys.prefix[:-4] + '/etc/xpra'
+ else:
+ conf_dir = sys.prefix + '/etc/xpra/'
+ defaults = read_xpra_conf(conf_dir)
diff --git a/x11-wm/xpra/files/xpra-0.10.12-launcher.patch b/x11-wm/xpra/files/xpra-0.10.12-launcher.patch
new file mode 100644
index 000000000000..edd42a8e837b
--- /dev/null
+++ b/x11-wm/xpra/files/xpra-0.10.12-launcher.patch
@@ -0,0 +1,10 @@
+--- src/xpra/client/gtk_base/client_launcher.py
++++ src/xpra/client/gtk_base/client_launcher.py
+@@ -18,5 +18,6 @@
+ import pygtk
+ pygtk.require('2.0')
+-import gtk.gdk
++import gtk
++from gtk import gdk
+ import gobject
+ gobject.threads_init()
diff --git a/x11-wm/xpra/files/xpra-0.12.0-prefix.patch b/x11-wm/xpra/files/xpra-0.12.0-prefix.patch
new file mode 100644
index 000000000000..cce5e9dbfac7
--- /dev/null
+++ b/x11-wm/xpra/files/xpra-0.12.0-prefix.patch
@@ -0,0 +1,27 @@
+--- xpra-0.12.0/xpra/scripts/config.py
++++ xpra-0.12.0/xpra/scripts/config.py
+@@ -188,9 +188,9 @@
+ #OSX and win32 use binary installers,
+ #we must look for the default config in the bundled resource location:
+ conf_dir = get_resources_dir()
+- elif sys.prefix == '/usr':
++ elif sys.prefix[-4:] == '/usr':
+ #default posix config location:
+- conf_dir = '/etc/xpra'
++ conf_dir = sys.prefix[:-4] + '/etc/xpra'
+ else:
+ #hope the prefix is something like "/usr/local":
+ conf_dir = sys.prefix + '/etc/xpra/'
+--- xpra-0.12.0/setup.py
++++ xpra-0.12.0/setup.py
+@@ -990,8 +990,8 @@
+ return {}
+ if "install" in sys.argv:
+ #prepare default [/usr/local]/etc configuration files:
+- if sys.prefix == '/usr':
+- etc_prefix = '/etc/xpra'
++ if sys.prefix[-4:] == '/usr':
++ etc_prefix = sys.prefix[:-4] + '/etc/xpra'
+ else:
+ etc_prefix = sys.prefix + '/etc/xpra'
+
diff --git a/x11-wm/xpra/files/xpra-0.13.1-ignore-gentoo-no-compile.patch b/x11-wm/xpra/files/xpra-0.13.1-ignore-gentoo-no-compile.patch
new file mode 100644
index 000000000000..9c580a513557
--- /dev/null
+++ b/x11-wm/xpra/files/xpra-0.13.1-ignore-gentoo-no-compile.patch
@@ -0,0 +1,11 @@
+--- xpra-0.13.1/setup.py
++++ xpra-0.13.1/setup.py
+@@ -395,7 +395,7 @@
+ #then expects to find the cython modules!? ie:
+ #python2.7 setup.py build -b build-2.7 install --no-compile --root=/var/tmp/portage/x11-wm/xpra-0.7.0/temp/images/2.7
+ if "--no-compile" in sys.argv and not ("build" in sys.argv and "install" in sys.argv):
+- return
++ pass
+ cython_version_check(min_version)
+ from Cython.Distutils import build_ext
+ ext_modules.append(extension)
diff --git a/x11-wm/xpra/files/xpra-0.14.0-prefix.patch b/x11-wm/xpra/files/xpra-0.14.0-prefix.patch
new file mode 100644
index 000000000000..140abbbbbc0b
--- /dev/null
+++ b/x11-wm/xpra/files/xpra-0.14.0-prefix.patch
@@ -0,0 +1,27 @@
+--- xpra-0.14.0/xpra/platform/paths.py
++++ xpra-0.14.0/xpra/platform/paths.py
+@@ -22,9 +22,9 @@
+
+ def get_system_conf_dir():
+ #the system wide configuration directory
+- if sys.prefix == '/usr':
++ if sys.prefix[-4:] == '/usr':
+ #default posix config location:
+- default_conf_dir = '/etc/xpra'
++ default_conf_dir = sys.prefix[:-4] + '/etc/xpra'
+ else:
+ #hope the prefix is something like "/usr/local":
+ default_conf_dir = sys.prefix + '/etc/xpra/'
+--- xpra-0.14.0/setup.py
++++ xpra-0.14.0/setup.py
+@@ -1470,8 +1470,8 @@
+ #prepare default [/usr/local]/etc configuration files:
+ if '--user' in sys.argv:
+ etc_prefix = 'etc/xpra'
+- elif sys.prefix == '/usr':
+- etc_prefix = '/etc/xpra'
++ elif sys.prefix[-4:] == '/usr':
++ etc_prefix = sys.prefix[:-4] + '/etc/xpra'
+ else:
+ etc_prefix = sys.prefix + '/etc/xpra'
+
diff --git a/x11-wm/xpra/files/xpra-0.15.0-prefix.patch b/x11-wm/xpra/files/xpra-0.15.0-prefix.patch
new file mode 100644
index 000000000000..32e8be80dd46
--- /dev/null
+++ b/x11-wm/xpra/files/xpra-0.15.0-prefix.patch
@@ -0,0 +1,27 @@
+--- xpra-0.15.0/setup.py
++++ xpra-0.15.0/setup.py
+@@ -1612,8 +1612,8 @@
+ #prepare default [/usr/local]/etc configuration files:
+ if '--user' in sys.argv:
+ etc_prefix = 'etc/xpra'
+- elif sys.prefix == '/usr':
+- etc_prefix = '/etc/xpra'
++ elif sys.prefix[-4:] == '/usr':
++ etc_prefix = sys.prefix[:-4] + '/etc/xpra'
+ else:
+ etc_prefix = sys.prefix + '/etc/xpra'
+
+--- xpra-0.15.0/xpra/platform/paths.py
++++ xpra-0.15.0/xpra/platform/paths.py
+@@ -30,9 +30,9 @@
+ return env_conf_dir
+ prefix = get_install_prefix()
+ #the system wide configuration directory
+- if prefix == '/usr':
++ if sys.prefix[-4:] == '/usr':
+ #default posix config location:
+- return '/etc/xpra'
++ return sys.prefix[:-4] + '/etc/xpra'
+ #hope the prefix is something like "/usr/local" or "$HOME/.local":
+ return prefix + '/etc/xpra/'
+
diff --git a/x11-wm/xpra/files/xpra-0.7.1-ignore-gentoo-no-compile.patch b/x11-wm/xpra/files/xpra-0.7.1-ignore-gentoo-no-compile.patch
new file mode 100644
index 000000000000..31d619daddc9
--- /dev/null
+++ b/x11-wm/xpra/files/xpra-0.7.1-ignore-gentoo-no-compile.patch
@@ -0,0 +1,11 @@
+--- xpra-0.7.1/setup.py
++++ xpra-0.7.1/setup.py
+@@ -135,7 +135,7 @@
+ #then expects to find the cython modules!? ie:
+ #python2.7 setup.py build -b build-2.7 install --no-compile --root=/var/tmp/portage/x11-wm/xpra-0.7.0/temp/images/2.7
+ if "--no-compile" in sys.argv and not ("build" in sys.argv and "install" in sys.argv):
+- return
++ pass
+ global ext_modules, cmdclass
+ cython_version_check(min_version)
+ from Cython.Distutils import build_ext
diff --git a/x11-wm/xpra/metadata.xml b/x11-wm/xpra/metadata.xml
new file mode 100644
index 000000000000..e5c0aae227a7
--- /dev/null
+++ b/x11-wm/xpra/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>xmw@gentoo.org</email>
+ <name>Michael Weber</name>
+</maintainer>
+<upstream>
+ <bugs-to>https://www.xpra.org/trac/report</bugs-to>
+</upstream>
+<use>
+ <flag name='client'>Build client-side code</flag>
+ <flag name='server'>Build server-side code</flag>
+ <flag name='clipboard'>Enable clipboard support</flag>
+ <flag name='rencode'>Enable rencode support</flag>
+ <flag name='vpx'>Enable vpx image format support</flag>
+ <flag name='webp'>Enable webp image format support</flag>
+ <flag name='csc'>Enable csc softscaler support</flag>
+ <flag name='dec_av'>Enable dec_avcodec support</flag>
+ <flag name='dec_av2'>Enable dec_avcodec2 support</flag>
+ <flag name='x265'>Enable x265 support</flag>
+</use>
+</pkgmetadata>
diff --git a/x11-wm/xpra/xpra-0.11.6.ebuild b/x11-wm/xpra/xpra-0.11.6.ebuild
new file mode 100644
index 000000000000..47ecf97d7d6b
--- /dev/null
+++ b/x11-wm/xpra/xpra-0.11.6.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+inherit distutils-r1 eutils
+
+DESCRIPTION="X Persistent Remote Apps (xpra) and Partitioning WM (parti) based on wimpiggy"
+HOMEPAGE="http://xpra.org/ http://xpra.org/src/"
+SRC_URI="http://xpra.org/src/${P}.tar.xz"
+
+LICENSE="GPL-2 BSD"
+SLOT="0"
+KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
+IUSE="+client +clipboard csc dec_av dec_av2 opengl pulseaudio +rencode server sound vpx webp x264"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ clipboard? ( || ( server client ) )
+ opengl? ( client )
+ || ( client server )"
+
+# x264/old-libav.path situation see bug 459218
+COMMON_DEPEND=""${PYTHON_DEPS}"
+ dev-python/pygobject:2[${PYTHON_USEDEP}]
+ dev-python/pygtk:2[${PYTHON_USEDEP}]
+ x11-libs/gtk+:2
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libXtst
+ csc? ( || ( >=media-video/ffmpeg-1.2.2 media-video/libav ) )
+ dec_av? ( || ( >=media-video/ffmpeg-1.2.2 media-video/libav ) )
+ opengl? ( dev-python/pygtkglext )
+ pulseaudio? ( media-sound/pulseaudio )
+ sound? ( media-libs/gstreamer:0.10
+ media-libs/gst-plugins-base:0.10
+ dev-python/gst-python:0.10 )
+ vpx? ( media-libs/libvpx virtual/ffmpeg )
+ webp? ( media-libs/libwebp )
+ x264? ( media-libs/x264
+ || ( >=media-video/ffmpeg-1.0.4:0 media-video/libav ) )"
+
+RDEPEND="${COMMON_DEPEND}
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ dev-python/ipython[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ virtual/python-imaging[${PYTHON_USEDEP}]
+ virtual/ssh
+ x11-apps/setxkbmap
+ x11-apps/xmodmap
+ server? ( x11-base/xorg-server[-minimal,xvfb]
+ x11-drivers/xf86-input-void
+ x11-drivers/xf86-video-dummy
+ )"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+ >=dev-python/cython-0.16[${PYTHON_USEDEP}]"
+
+python_prepare_all() {
+ epatch \
+ "${FILESDIR}"/${PN}-0.7.1-ignore-gentoo-no-compile.patch \
+ "${FILESDIR}"/${PN}-0.10.1-prefix.patch
+
+ #assuming ffmpeg and libav mutual exclusive installs
+ if has_version "media-video/libav" ; then
+ if ! has_version ">=media-video/libav-9" ; then
+ epatch patches/old-libav.patch
+ fi
+ fi
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ mydistutilsargs=(
+ $(use_with client)
+ $(use_with clipboard)
+ $(use_with csc csc_swscale)
+ $(use_with dec_av dec_avcodec)
+ $(use_with dec_av2 dec_avcodec2)
+ $(use_with opengl)
+ $(use_with rencode)
+ $(use_with server cymaths)
+ $(use_with server shadow)
+ $(use_with server)
+ $(use_with sound)
+ $(use_with vpx)
+ $(use_with webp)
+ $(use_with x264 enc_x264)
+ --with-Xdummy
+ --with-argb
+ --with-cyxor
+ --with-gtk2
+ --without-gtk3
+ --without-qt4
+ --with-strict
+ --with-warn
+ --with-x11
+ --without-PIC
+ --without-debug )
+}
diff --git a/x11-wm/xpra/xpra-0.12.7.ebuild b/x11-wm/xpra/xpra-0.12.7.ebuild
new file mode 100644
index 000000000000..80f5ca7fa582
--- /dev/null
+++ b/x11-wm/xpra/xpra-0.12.7.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+inherit distutils-r1 eutils
+
+DESCRIPTION="X Persistent Remote Apps (xpra) and Partitioning WM (parti) based on wimpiggy"
+HOMEPAGE="http://xpra.org/ http://xpra.org/src/"
+SRC_URI="http://xpra.org/src/${P}.tar.xz"
+
+LICENSE="GPL-2 BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="+client +clipboard csc dec_av dec_av2 opengl pulseaudio +rencode server sound vpx webp x264"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ clipboard? ( || ( server client ) )
+ opengl? ( client )
+ || ( client server )"
+
+# x264/old-libav.path situation see bug 459218
+COMMON_DEPEND=""${PYTHON_DEPS}"
+ dev-python/pygobject:2[${PYTHON_USEDEP}]
+ dev-python/pygtk:2[${PYTHON_USEDEP}]
+ x11-libs/gtk+:2
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libXtst
+ csc? ( || ( >=media-video/ffmpeg-1.2.2 media-video/libav ) )
+ dec_av? ( || ( >=media-video/ffmpeg-1.2.2 media-video/libav ) )
+ opengl? ( dev-python/pygtkglext )
+ pulseaudio? ( media-sound/pulseaudio )
+ sound? ( media-libs/gstreamer:0.10
+ media-libs/gst-plugins-base:0.10
+ dev-python/gst-python:0.10 )
+ vpx? ( media-libs/libvpx virtual/ffmpeg )
+ webp? ( media-libs/libwebp )
+ x264? ( media-libs/x264
+ || ( >=media-video/ffmpeg-1.0.4:0 media-video/libav ) )"
+
+RDEPEND="${COMMON_DEPEND}
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ dev-python/ipython[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ virtual/python-imaging[${PYTHON_USEDEP}]
+ virtual/ssh
+ x11-apps/setxkbmap
+ x11-apps/xmodmap
+ server? ( x11-base/xorg-server[-minimal,xvfb]
+ x11-drivers/xf86-input-void
+ x11-drivers/xf86-video-dummy
+ )"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+ >=dev-python/cython-0.16[${PYTHON_USEDEP}]"
+
+python_prepare_all() {
+ epatch \
+ "${FILESDIR}"/${PN}-0.7.1-ignore-gentoo-no-compile.patch \
+ "${FILESDIR}"/${PN}-0.12.0-prefix.patch
+
+ #assuming ffmpeg and libav mutual exclusive installs
+ if has_version "media-video/libav" ; then
+ if ! has_version ">=media-video/libav-9" ; then
+ epatch patches/old-libav.patch
+ fi
+ fi
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ mydistutilsargs=(
+ $(use_with client)
+ $(use_with clipboard)
+ $(use_with csc csc_swscale)
+ $(use_with dec_av dec_avcodec)
+ $(use_with dec_av2 dec_avcodec2)
+ $(use_with opengl)
+ $(use_with rencode)
+ $(use_with server cymaths)
+ $(use_with server shadow)
+ $(use_with server)
+ $(use_with sound)
+ $(use_with vpx)
+ $(use_with webp)
+ $(use_with x264 enc_x264)
+ --with-Xdummy
+ --with-argb
+ --with-cyxor
+ --with-gtk2
+ --without-gtk3
+ --without-qt4
+ --with-strict
+ --with-warn
+ --with-x11
+ --without-PIC
+ --without-debug )
+}
diff --git a/x11-wm/xpra/xpra-0.13.9.ebuild b/x11-wm/xpra/xpra-0.13.9.ebuild
new file mode 100644
index 000000000000..950e825eb6ad
--- /dev/null
+++ b/x11-wm/xpra/xpra-0.13.9.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+# PyCObject_Check and PyCObject_AsVoidPtr vanished with python 3.3, and setup.py not python3.2 copmat
+PYTHON_COMPAT=( python2_7 )
+inherit distutils-r1 eutils
+
+DESCRIPTION="X Persistent Remote Apps (xpra) and Partitioning WM (parti) based on wimpiggy"
+HOMEPAGE="http://xpra.org/ http://xpra.org/src/"
+SRC_URI="http://xpra.org/src/${P}.tar.xz"
+
+LICENSE="GPL-2 BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="+client +clipboard csc dec_av dec_av2 opengl pulseaudio +rencode server sound vpx webp x264"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ clipboard? ( || ( server client ) )
+ opengl? ( client )
+ || ( client server )"
+
+# x264/old-libav.path situation see bug 459218
+COMMON_DEPEND=""${PYTHON_DEPS}"
+ dev-python/pygobject:2[${PYTHON_USEDEP}]
+ dev-python/pygtk:2[${PYTHON_USEDEP}]
+ x11-libs/gtk+:2
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libXtst
+ csc? ( || ( >=media-video/ffmpeg-1.2.2 media-video/libav ) )
+ dec_av? ( || ( >=media-video/ffmpeg-1.2.2 media-video/libav ) )
+ opengl? ( dev-python/pygtkglext )
+ pulseaudio? ( media-sound/pulseaudio )
+ sound? ( media-libs/gstreamer:0.10
+ media-libs/gst-plugins-base:0.10
+ dev-python/gst-python:0.10 )
+ vpx? ( media-libs/libvpx virtual/ffmpeg )
+ webp? ( media-libs/libwebp )
+ x264? ( media-libs/x264
+ || ( >=media-video/ffmpeg-1.0.4:0 media-video/libav ) )"
+
+RDEPEND="${COMMON_DEPEND}
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ dev-python/ipython[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ virtual/python-imaging[${PYTHON_USEDEP}]
+ virtual/ssh
+ x11-apps/setxkbmap
+ x11-apps/xmodmap
+ server? ( x11-base/xorg-server[-minimal,xvfb]
+ x11-drivers/xf86-input-void
+ x11-drivers/xf86-video-dummy
+ )"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+ >=dev-python/cython-0.16[${PYTHON_USEDEP}]"
+
+python_prepare_all() {
+ epatch \
+ "${FILESDIR}"/${PN}-0.13.1-ignore-gentoo-no-compile.patch \
+ "${FILESDIR}"/${PN}-0.12.0-prefix.patch
+
+ #assuming ffmpeg and libav mutual exclusive installs
+ if has_version "media-video/libav" ; then
+ if ! has_version ">=media-video/libav-9" ; then
+ epatch patches/old-libav.patch
+ fi
+ fi
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ mydistutilsargs=(
+ $(use_with client)
+ $(use_with clipboard)
+ $(use_with csc csc_swscale)
+ $(use_with dec_av dec_avcodec)
+ $(use_with dec_av2 dec_avcodec2)
+ $(use_with opengl)
+ $(use_with rencode)
+ $(use_with server cymaths)
+ $(use_with server shadow)
+ $(use_with server)
+ $(use_with sound)
+ $(use_with vpx)
+ $(use_with webp)
+ $(use_with x264 enc_x264)
+ --with-Xdummy
+ --with-argb
+ --with-cyxor
+ --with-gtk2
+ --without-gtk3
+ --without-qt4
+ --with-strict
+ --with-warn
+ --with-x11
+ --without-PIC
+ --without-debug )
+}
diff --git a/x11-wm/xpra/xpra-0.14.27.ebuild b/x11-wm/xpra/xpra-0.14.27.ebuild
new file mode 100644
index 000000000000..d35948c5ced4
--- /dev/null
+++ b/x11-wm/xpra/xpra-0.14.27.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+EAPI=5
+
+# PyCObject_Check and PyCObject_AsVoidPtr vanished with python 3.3, and setup.py not python3.2 copmat
+PYTHON_COMPAT=( python2_7 )
+inherit distutils-r1 eutils
+
+DESCRIPTION="X Persistent Remote Apps (xpra) and Partitioning WM (parti) based on wimpiggy"
+HOMEPAGE="http://xpra.org/ http://xpra.org/src/"
+SRC_URI="http://xpra.org/src/${P}.tar.xz"
+
+LICENSE="GPL-2 BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="+client +clipboard csc dec_av dec_av2 libav opengl pulseaudio +rencode server sound vpx webp x264 x265"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ clipboard? ( || ( server client ) )
+ opengl? ( client )
+ || ( client server )"
+
+# x264/old-libav.path situation see bug 459218
+COMMON_DEPEND=""${PYTHON_DEPS}"
+ dev-python/pygobject:2[${PYTHON_USEDEP}]
+ dev-python/pygtk:2[${PYTHON_USEDEP}]
+ x11-libs/gtk+:2
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libXtst
+ csc? (
+ !libav? ( >=media-video/ffmpeg-1.2.2:0= )
+ libav? ( media-video/libav:0= )
+ )
+ dec_av? (
+ !libav? ( >=media-video/ffmpeg-1.2.2:0= )
+ libav? ( media-video/libav:0= )
+ )
+ dec_av2? (
+ !libav? ( >=media-video/ffmpeg-2:0= )
+ libav? ( media-video/libav:0= )
+ )
+ opengl? ( dev-python/pygtkglext )
+ pulseaudio? ( media-sound/pulseaudio )
+ sound? ( media-libs/gstreamer:0.10
+ media-libs/gst-plugins-base:0.10
+ dev-python/gst-python:0.10 )
+ vpx? ( media-libs/libvpx virtual/ffmpeg )
+ webp? ( media-libs/libwebp )
+ x264? ( media-libs/x264
+ !libav? ( >=media-video/ffmpeg-1.0.4:0= )
+ libav? ( media-video/libav:0= )
+ )
+ x265? ( media-libs/x265
+ !libav? ( >=media-video/ffmpeg-2:0= )
+ libav? ( media-video/libav:0= )
+ )"
+
+RDEPEND="${COMMON_DEPEND}
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ dev-python/ipython[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ virtual/python-imaging[${PYTHON_USEDEP}]
+ virtual/ssh
+ x11-apps/setxkbmap
+ x11-apps/xmodmap
+ server? ( x11-base/xorg-server[-minimal,xvfb]
+ x11-drivers/xf86-input-void
+ x11-drivers/xf86-video-dummy
+ )"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+ >=dev-python/cython-0.16[${PYTHON_USEDEP}]"
+
+python_prepare_all() {
+ epatch \
+ "${FILESDIR}"/${PN}-0.13.1-ignore-gentoo-no-compile.patch \
+ "${FILESDIR}"/${PN}-0.14.0-prefix.patch
+
+ if use libav ; then
+ if ! has_version ">=media-video/libav-9" ; then
+ epatch patches/old-libav.patch
+ fi
+ fi
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ mydistutilsargs=(
+ $(use_with client)
+ $(use_with clipboard)
+ $(use_with csc csc_swscale)
+ $(use_with dec_av dec_avcodec)
+ $(use_with dec_av2 dec_avcodec2)
+ $(use_with opengl)
+ $(use_with rencode)
+ $(use_with server cymaths)
+ $(use_with server shadow)
+ $(use_with server)
+ $(use_with sound)
+ $(use_with vpx)
+ $(use_with webp)
+ $(use_with x264 enc_x264)
+ $(use_with x265 enc_x265)
+ --with-Xdummy
+ --with-argb
+ --with-cyxor
+ --with-gtk2
+ --without-gtk3
+ --without-qt4
+ --with-strict
+ --with-warn
+ --with-x11
+ --without-PIC
+ --without-debug )
+}
diff --git a/x11-wm/xpra/xpra-0.15.3.ebuild b/x11-wm/xpra/xpra-0.15.3.ebuild
new file mode 100644
index 000000000000..9e66d3b62697
--- /dev/null
+++ b/x11-wm/xpra/xpra-0.15.3.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+EAPI=5
+
+# PyCObject_Check and PyCObject_AsVoidPtr vanished with python 3.3, and setup.py not python3.2 copmat
+PYTHON_COMPAT=( python2_7 )
+inherit distutils-r1 eutils
+
+DESCRIPTION="X Persistent Remote Apps (xpra) and Partitioning WM (parti) based on wimpiggy"
+HOMEPAGE="http://xpra.org/ http://xpra.org/src/"
+SRC_URI="http://xpra.org/src/${P}.tar.xz"
+
+LICENSE="GPL-2 BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="+client +clipboard csc cups dec_av2 libav opengl pulseaudio server sound vpx webp x264 x265"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ clipboard? ( || ( server client ) )
+ opengl? ( client )
+ || ( client server )"
+
+# x264/old-libav.path situation see bug 459218
+COMMON_DEPEND=""${PYTHON_DEPS}"
+ dev-python/pygobject:2[${PYTHON_USEDEP}]
+ dev-python/pygtk:2[${PYTHON_USEDEP}]
+ x11-libs/gtk+:2
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libXtst
+ csc? (
+ !libav? ( >=media-video/ffmpeg-1.2.2:0= )
+ libav? ( media-video/libav:0= )
+ )
+ dec_av2? (
+ !libav? ( >=media-video/ffmpeg-2:0= )
+ libav? ( media-video/libav:0= )
+ )
+ opengl? ( dev-python/pygtkglext )
+ pulseaudio? ( media-sound/pulseaudio )
+ sound? ( media-libs/gstreamer:0.10
+ media-libs/gst-plugins-base:0.10
+ dev-python/gst-python:0.10 )
+ vpx? ( media-libs/libvpx virtual/ffmpeg )
+ webp? ( media-libs/libwebp )
+ x264? ( media-libs/x264
+ !libav? ( >=media-video/ffmpeg-1.0.4:0= )
+ libav? ( media-video/libav:0= )
+ )
+ x265? ( media-libs/x265
+ !libav? ( >=media-video/ffmpeg-2:0= )
+ libav? ( media-video/libav:0= )
+ )"
+
+RDEPEND="${COMMON_DEPEND}
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ dev-python/ipython[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/rencode[${PYTHON_USEDEP}]
+ virtual/python-imaging[${PYTHON_USEDEP}]
+ virtual/ssh
+ x11-apps/setxkbmap
+ x11-apps/xmodmap
+ server? ( x11-base/xorg-server[-minimal,xvfb]
+ x11-drivers/xf86-input-void
+ x11-drivers/xf86-video-dummy
+ )"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+ >=dev-python/cython-0.16[${PYTHON_USEDEP}]"
+
+python_prepare_all() {
+ rm -rf rencode || die
+
+ epatch \
+ "${FILESDIR}"/${PN}-0.13.1-ignore-gentoo-no-compile.patch \
+ "${FILESDIR}"/${PN}-0.15.0-prefix.patch
+
+ if use libav ; then
+ if ! has_version ">=media-video/libav-9" ; then
+ epatch patches/old-libav.patch
+ fi
+ fi
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ mydistutilsargs=(
+ $(use_with client)
+ $(use_with clipboard)
+ $(use_with csc csc_swscale)
+ $(use_with cups printing)
+ $(use_with dec_av2 dec_avcodec2)
+ $(use_with opengl)
+ $(use_with server shadow)
+ $(use_with server)
+ $(use_with sound)
+ $(use_with vpx)
+ $(use_with webp)
+ $(use_with x264 enc_x264)
+ $(use_with x265 enc_x265)
+ --with-Xdummy
+ --with-gtk2
+ --without-gtk3
+ --with-strict
+ --with-warn
+ --with-x11
+ --without-PIC
+ --without-debug )
+}
diff --git a/x11-wm/xpra/xpra-0.15.4.ebuild b/x11-wm/xpra/xpra-0.15.4.ebuild
new file mode 100644
index 000000000000..9e66d3b62697
--- /dev/null
+++ b/x11-wm/xpra/xpra-0.15.4.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+EAPI=5
+
+# PyCObject_Check and PyCObject_AsVoidPtr vanished with python 3.3, and setup.py not python3.2 copmat
+PYTHON_COMPAT=( python2_7 )
+inherit distutils-r1 eutils
+
+DESCRIPTION="X Persistent Remote Apps (xpra) and Partitioning WM (parti) based on wimpiggy"
+HOMEPAGE="http://xpra.org/ http://xpra.org/src/"
+SRC_URI="http://xpra.org/src/${P}.tar.xz"
+
+LICENSE="GPL-2 BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="+client +clipboard csc cups dec_av2 libav opengl pulseaudio server sound vpx webp x264 x265"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ clipboard? ( || ( server client ) )
+ opengl? ( client )
+ || ( client server )"
+
+# x264/old-libav.path situation see bug 459218
+COMMON_DEPEND=""${PYTHON_DEPS}"
+ dev-python/pygobject:2[${PYTHON_USEDEP}]
+ dev-python/pygtk:2[${PYTHON_USEDEP}]
+ x11-libs/gtk+:2
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libXtst
+ csc? (
+ !libav? ( >=media-video/ffmpeg-1.2.2:0= )
+ libav? ( media-video/libav:0= )
+ )
+ dec_av2? (
+ !libav? ( >=media-video/ffmpeg-2:0= )
+ libav? ( media-video/libav:0= )
+ )
+ opengl? ( dev-python/pygtkglext )
+ pulseaudio? ( media-sound/pulseaudio )
+ sound? ( media-libs/gstreamer:0.10
+ media-libs/gst-plugins-base:0.10
+ dev-python/gst-python:0.10 )
+ vpx? ( media-libs/libvpx virtual/ffmpeg )
+ webp? ( media-libs/libwebp )
+ x264? ( media-libs/x264
+ !libav? ( >=media-video/ffmpeg-1.0.4:0= )
+ libav? ( media-video/libav:0= )
+ )
+ x265? ( media-libs/x265
+ !libav? ( >=media-video/ffmpeg-2:0= )
+ libav? ( media-video/libav:0= )
+ )"
+
+RDEPEND="${COMMON_DEPEND}
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ dev-python/ipython[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/rencode[${PYTHON_USEDEP}]
+ virtual/python-imaging[${PYTHON_USEDEP}]
+ virtual/ssh
+ x11-apps/setxkbmap
+ x11-apps/xmodmap
+ server? ( x11-base/xorg-server[-minimal,xvfb]
+ x11-drivers/xf86-input-void
+ x11-drivers/xf86-video-dummy
+ )"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+ >=dev-python/cython-0.16[${PYTHON_USEDEP}]"
+
+python_prepare_all() {
+ rm -rf rencode || die
+
+ epatch \
+ "${FILESDIR}"/${PN}-0.13.1-ignore-gentoo-no-compile.patch \
+ "${FILESDIR}"/${PN}-0.15.0-prefix.patch
+
+ if use libav ; then
+ if ! has_version ">=media-video/libav-9" ; then
+ epatch patches/old-libav.patch
+ fi
+ fi
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ mydistutilsargs=(
+ $(use_with client)
+ $(use_with clipboard)
+ $(use_with csc csc_swscale)
+ $(use_with cups printing)
+ $(use_with dec_av2 dec_avcodec2)
+ $(use_with opengl)
+ $(use_with server shadow)
+ $(use_with server)
+ $(use_with sound)
+ $(use_with vpx)
+ $(use_with webp)
+ $(use_with x264 enc_x264)
+ $(use_with x265 enc_x265)
+ --with-Xdummy
+ --with-gtk2
+ --without-gtk3
+ --with-strict
+ --with-warn
+ --with-x11
+ --without-PIC
+ --without-debug )
+}