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 00000000000..7c042667a89
--- /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 00000000000..92362546fc4
--- /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 00000000000..23cacdc43a2
--- /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 00000000000..8b84a996346
--- /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 00000000000..dda5ad35c2d
--- /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 00000000000..09cacc9dd65
--- /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 00000000000..bd4b3c03176
--- /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 00000000000..6cc02f4560d
--- /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 00000000000..aeb17f4fb96
--- /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 00000000000..a133cbb0c62
--- /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 00000000000..d65792701cc
--- /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 00000000000..da9913c5830
--- /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 00000000000..22bc4441ea4
--- /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 00000000000..1ed6bd9394d
--- /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 00000000000..61f4f08c082
--- /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 00000000000..307180b9bae
--- /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 00000000000..5d27d7d8293
--- /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 00000000000..b420489b326
--- /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 00000000000..2c2f8bfeee3
--- /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 00000000000..4195413c5ee
--- /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 00000000000..35a169026b7
--- /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 00000000000..aa10be5ef13
--- /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 00000000000..466c8be735b
--- /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 00000000000..c346fbb0bc0
--- /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 00000000000..7b13b66a08a
--- /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 00000000000..fa875a4a43b
--- /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 00000000000..4a01347d0e8
--- /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 00000000000..03b9f2fc458
--- /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 00000000000..068bf7a4caf
--- /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 00000000000..57e7d2bd28c
--- /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 00000000000..fdd3e1553c9
--- /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 00000000000..1315b68ae67
--- /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 00000000000..aebb60efd92
--- /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 00000000000..f709548c7fd
--- /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 00000000000..9a2fa5e99bf
--- /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 00000000000..a8f8015eca2
--- /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 00000000000..2fbf29866af
--- /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 00000000000..f06739ce87b
--- /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 00000000000..4d481ea130a
--- /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 00000000000..7d224f24302
--- /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 00000000000..3cfeaba2df3
--- /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 00000000000..588f9ab9ec5
--- /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 00000000000..e6c37b0f9c7
--- /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 00000000000..e67eeb04e0f
--- /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 00000000000..e3e6fcf9489
--- /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 00000000000..d1bd6fa9f9f
--- /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 00000000000..148cd3dd30f
--- /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 00000000000..8adf5fcc95e
--- /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 00000000000..dd0c01b55dc
--- /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 00000000000..fe769467185
--- /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 00000000000..5a17076683d
--- /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 00000000000..b8d8f214211
--- /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 00000000000..446ee196aa1
--- /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 00000000000..69a11eb83f3
--- /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 00000000000..5a1ab87f0ac
--- /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 00000000000..ee0d2f94728
--- /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 00000000000..a6b1e22e62b
--- /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 00000000000..1026bd5c80e
--- /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 00000000000..e907b588b15
--- /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 00000000000..c84ce24a2a5
--- /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 00000000000..0deb53ae1fa
--- /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 00000000000..b9e3b319aca
--- /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 00000000000..02ef4f3c378
--- /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 00000000000..a3d22f1f922
--- /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 00000000000..589a5abed89
--- /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 00000000000..b0dcacac4db
--- /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 00000000000..e51ead1b9b5
--- /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 00000000000..5d305a00684
--- /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 00000000000..a20b32a3dbc
--- /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 00000000000..9e592b3de0a
--- /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 00000000000..7c282bc5c5c
--- /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 00000000000..2b313d2745b
--- /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 00000000000..28315baec5b
--- /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 00000000000..a30d54b90fa
--- /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 00000000000..f31751ba517
--- /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 00000000000..7b56da95c80
--- /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 00000000000..74d45da2590
--- /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 00000000000..d43e84de681
--- /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 00000000000..22cf642b236
--- /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 00000000000..bf856f7d43b
--- /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 00000000000..e8d23b03106
--- /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 00000000000..d73737cbbb0
--- /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 00000000000..88a435c6b71
--- /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 00000000000..665e0e60aa8
--- /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 00000000000..d6f9e5cee3d
--- /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 00000000000..4538a68724a
--- /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 00000000000..b987abef9ad
--- /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 00000000000..ef17e986d3c
--- /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 00000000000..a7554440204
--- /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 00000000000..89363c9bb57
--- /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 00000000000..8fefc87be2a
--- /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 00000000000..21b960b1c98
--- /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 00000000000..bb00c017112
--- /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 00000000000..77896dc9461
--- /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 00000000000..228e2786dfe
--- /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 00000000000..a5f1dcd0436
--- /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 00000000000..f886ce9465f
--- /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 00000000000..c31a41297ee
--- /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 00000000000..b6af2b7ba15
--- /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 00000000000..6dd02c92025
--- /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 00000000000..32696f577ae
--- /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 00000000000..75b8b48c121
--- /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 00000000000..7a13be918bf
--- /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 00000000000..bc2c871aba1
--- /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 00000000000..5fd73116128
--- /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 00000000000..921726a7680
--- /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 00000000000..047d8dfad78
--- /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 00000000000..13d892cb883
--- /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 00000000000..e649f55929a
--- /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 00000000000..3fa45b6489a
--- /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 00000000000..f39b170c643
--- /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 00000000000..d1ada7b5919
--- /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 00000000000..f75254c8129
--- /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 00000000000..797a52fa637
--- /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 00000000000..d1ada7b5919
--- /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 00000000000..d1ada7b5919
--- /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 00000000000..7acde8ff09f
--- /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 00000000000..1c44720d097
--- /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 00000000000..c06100c2465
--- /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 00000000000..bba16cf0deb
--- /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 00000000000..ccded69d6f9
--- /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 00000000000..ccded69d6f9
--- /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 00000000000..ccded69d6f9
--- /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 00000000000..ab74872f8d1
--- /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 00000000000..fa8055f8b6f
--- /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 00000000000..fa8055f8b6f
--- /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 00000000000..7f6f2ab541a
--- /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 00000000000..fa8055f8b6f
--- /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 00000000000..fe676238b90
--- /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 00000000000..c7d3f38086c
--- /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 00000000000..cc4abd49cba
--- /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 00000000000..06c560dc1fc
--- /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 00000000000..0353800e1eb
--- /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 00000000000..5b6afabb818
--- /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 00000000000..419d1ec1110
--- /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 00000000000..14ec3954f6b
--- /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 00000000000..b03e5151ae8
--- /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 00000000000..f9246f15907
--- /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 00000000000..e5e5a552c39
--- /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 00000000000..975d121c877
--- /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 00000000000..0fb9dcd6c77
--- /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 00000000000..dfa4f2eab48
--- /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 00000000000..7671dd83647
--- /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 00000000000..742e587e4f4
--- /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 00000000000..d2e0d580339
--- /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 00000000000..3d011d27ed2
--- /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 00000000000..15c3db6f0fb
--- /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 00000000000..537c6b189c8
--- /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 00000000000..7556e09ba47
--- /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 00000000000..e3eeb59d669
--- /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 00000000000..f1e704ff3c1
--- /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 00000000000..2eb6d081afd
--- /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 00000000000..0728129aa2c
--- /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 00000000000..9efc051d841
--- /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 00000000000..74fcf355ff4
--- /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 00000000000..2d261c0d56a
--- /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 00000000000..a60b5f668ac
--- /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 00000000000..1c49f69007d
--- /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 00000000000..b1d62006967
--- /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 00000000000..7eaa3e20b7c
--- /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 00000000000..74bc6a53557
--- /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 00000000000..703edaa8217
--- /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 00000000000..488ee85f661
--- /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 00000000000..3274473731a
--- /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 00000000000..704d8f91190
--- /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 00000000000..5439a42d5ac
--- /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 00000000000..6c576e50e04
--- /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 00000000000..e63f775e5db
--- /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 00000000000..157326a7e89
--- /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 00000000000..4425d538817
--- /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 00000000000..77147d264e1
--- /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 00000000000..ed9256f441d
--- /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 00000000000..8e6eee75a93
--- /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 00000000000..37b6435ca87
--- /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 00000000000..e9a2786222d
--- /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 00000000000..37b6435ca87
--- /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 00000000000..ff4b0c71a41
--- /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 00000000000..ea839bceb0e
--- /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 00000000000..ec8f36d74ca
--- /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 00000000000..087384ee130
--- /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 00000000000..90905960d1a
--- /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 00000000000..721a15d25ee
--- /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 00000000000..55100d5f62a
--- /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 00000000000..d500f64004b
--- /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 00000000000..d051d5bc5f1
--- /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 00000000000..f6b2cf71f0f
--- /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 00000000000..cec27a79ad0
--- /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 00000000000..b956180627b
--- /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 00000000000..e4bab5c5ffc
--- /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 00000000000..e790842faed
--- /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 00000000000..91aa55c1f12
--- /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 00000000000..5019b68f3d7
--- /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 00000000000..72e5410db4f
--- /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 00000000000..66691d78a3f
--- /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 00000000000..7e136bb9328
--- /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 00000000000..048ab593848
--- /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 00000000000..a6f0f15f52d
--- /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 00000000000..529f9e2ab3b
--- /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 00000000000..0ea58766e11
--- /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 00000000000..a884d32071d
--- /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 00000000000..eb3eaed9b85
--- /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 00000000000..175a10c99c1
--- /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 00000000000..1ba0f399fd1
--- /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 00000000000..7b1eb1c7fc8
--- /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 00000000000..0118f3d80ef
--- /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 00000000000..4538a68724a
--- /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 00000000000..a269ecffe5a
--- /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 00000000000..6be965d2730
--- /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 00000000000..e3466a5dd12
--- /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 00000000000..4ac6c58c904
--- /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 00000000000..fc3b8e17d87
--- /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 00000000000..6f8326f2631
--- /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 00000000000..28ea91e910d
--- /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 00000000000..ef03f4782b4
--- /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 00000000000..747591635ca
--- /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 00000000000..617713125e1
--- /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 00000000000..e2ea6f069a9
--- /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 00000000000..91435e68937
--- /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 00000000000..1a53cd0586f
--- /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 00000000000..57c1233c37c
--- /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 00000000000..8428a245f78
--- /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 00000000000..5c502b37972
--- /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 00000000000..6801533ac3a
--- /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 00000000000..234eca3a023
--- /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 00000000000..ad51fb7f931
--- /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 00000000000..399962591d0
--- /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 00000000000..3c7c7037eed
--- /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 00000000000..1651b6a9e6b
--- /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 00000000000..0c994964d80
--- /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 00000000000..781a6087c6e
--- /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 00000000000..8dcafbd7d93
--- /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 00000000000..d36a2eb8df0
--- /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 00000000000..624cc40a52c
--- /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 00000000000..26f436c695d
--- /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 00000000000..9af88302aa3
--- /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 00000000000..881567d9b96
--- /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 00000000000..71be316d1da
--- /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 00000000000..6a17403e0ad
--- /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 00000000000..53cb9af2bbd
--- /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 00000000000..6a17403e0ad
--- /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 00000000000..1e8fb6b98ac
--- /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 00000000000..16d86a036d4
--- /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 00000000000..e15f8e95d0a
--- /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 00000000000..5c06e5a6a7d
--- /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 00000000000..4538a68724a
--- /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 00000000000..4e0a0d83bfb
--- /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 00000000000..17643af2e7c
--- /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 00000000000..fc4050a85c7
--- /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 00000000000..95d64432743
--- /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 00000000000..3678ea2d046
--- /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 00000000000..9caa380f215
--- /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 00000000000..789fb970f21
--- /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 00000000000..0f28c5653c7
--- /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 00000000000..ce6bc45de73
--- /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 00000000000..6765ebcdcf7
--- /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 00000000000..23bd9283467
--- /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 00000000000..6efb77ff0b3
--- /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 00000000000..41e90a7ceb3
--- /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 00000000000..70dc935b807
--- /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 00000000000..0db45a22b6c
--- /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 00000000000..fbe96e763ac
--- /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 00000000000..3633659d5a2
--- /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 00000000000..3956004535a
--- /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 00000000000..0999ebd582a
--- /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 00000000000..bf4649e75ed
--- /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 00000000000..31e8de5153d
--- /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 00000000000..7bd70e662c7
--- /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 00000000000..cde05b3909a
--- /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 00000000000..e99ffbd3f79
--- /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 00000000000..e99ffbd3f79
--- /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 00000000000..de2c8c1e351
--- /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 00000000000..65bf5648ad0
--- /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 00000000000..fb718caa315
--- /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 00000000000..7c9de9a95fd
--- /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 00000000000..e708492171d
--- /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 00000000000..335288e7807
--- /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 00000000000..4c9e78a1dda
--- /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 00000000000..61c25128417
--- /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 00000000000..1b62fd73f92
--- /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 00000000000..10406af33c9
--- /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 00000000000..b2f7fe663d1
--- /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 00000000000..1e823e2a563
--- /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 00000000000..613fb3dd005
--- /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_RE