├── .editorconfig ├── .gitattributes ├── .gitignore ├── LICENSE.txt ├── Makefile ├── README.md └── session ├── i3-gnome ├── i3-gnome-xsession.desktop ├── i3-gnome.desktop └── i3-gnome.session /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig is awesome: http://EditorConfig.org 2 | 3 | root = true 4 | 5 | [*] 6 | charset = "utf-8" 7 | end_of_line = lf 8 | indent_size = 4 9 | indent_style = "space" 10 | insert_final_newline = true 11 | trim_trailing_whitespace = true 12 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .vagrant/ 2 | 3 | *.DS_Store 4 | -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2014 Lorenzo Villani 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Global Settings 3 | # 4 | 5 | INSTALL = install 6 | DESTDIR ?= / 7 | PREFIX ?= $(DESTDIR)/usr 8 | 9 | PATH_I3_GNOME = $(PREFIX)/bin/i3-gnome 10 | PATH_I3_GNOME_DESKTOP = $(PREFIX)/share/applications/i3-gnome.desktop 11 | PATH_I3_GNOME_SESSION = $(PREFIX)/share/gnome-session/sessions/i3-gnome.session 12 | PATH_I3_GNOME_XSESSION = $(PREFIX)/share/xsessions/i3-gnome.desktop 13 | 14 | # 15 | # Targets 16 | # 17 | 18 | all: 19 | @echo "Nothing to do" 20 | 21 | 22 | install: 23 | $(INSTALL) -m0644 -D session/i3-gnome-xsession.desktop $(PATH_I3_GNOME_XSESSION) 24 | $(INSTALL) -m0644 -D session/i3-gnome.desktop $(PATH_I3_GNOME_DESKTOP) 25 | $(INSTALL) -m0644 -D session/i3-gnome.session $(PATH_I3_GNOME_SESSION) 26 | $(INSTALL) -m0755 -D session/i3-gnome $(PATH_I3_GNOME) 27 | 28 | 29 | uninstall: 30 | rm -f $(PATH_I3_GNOME) 31 | rm -f $(PATH_I3_GNOME_DESKTOP) 32 | rm -f $(PATH_I3_GNOME_SESSION) 33 | rm -f $(PATH_I3_GNOME_XSESSION) 34 | 35 | 36 | .PHONY: all install uninstall 37 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # i3-gnome 2 | 3 | [![License](http://img.shields.io/badge/license-MIT-blue.svg?style=flat)](http://choosealicense.com/licenses/mit/) 4 | 5 | -------------------------------------------------------------------------------- 6 | 7 | Allows you to use i3-wm with GNOME 3 Session infrastructure on Arch Linux. 8 | 9 | Check out the AUR package `i3-gnome` for easy install. 10 | -------------------------------------------------------------------------------- /session/i3-gnome: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Register with gnome-session so that it does not kill the whole session thinking it is dead. 4 | test -n "$DESKTOP_AUTOSTART_ID" && { 5 | dbus-send --print-reply --session --dest=org.gnome.SessionManager "/org/gnome/SessionManager" org.gnome.SessionManager.RegisterClient "string:i3-gnome" "string:$DESKTOP_AUTOSTART_ID" 6 | } 7 | 8 | i3 9 | 10 | # Close Gnome session. 11 | dbus-send --print-reply --session --dest=org.gnome.SessionManager "/org/gnome/SessionManager" org.gnome.SessionManager.Logout "uint32:1" 12 | 13 | -------------------------------------------------------------------------------- /session/i3-gnome-xsession.desktop: -------------------------------------------------------------------------------- 1 | # -*- mode: conf -*- 2 | 3 | [Desktop Entry] 4 | Comment=GNOME session management + i3 5 | Exec=gnome-session --session=i3-gnome 6 | Name=GNOME + i3 7 | TryExec=gnome-session 8 | Type=XSession 9 | -------------------------------------------------------------------------------- /session/i3-gnome.desktop: -------------------------------------------------------------------------------- 1 | # -*- mode: conf -*- 2 | 3 | [Desktop Entry] 4 | Comment=Improved dynamic tiling window manager, registers with gnome session manager. 5 | Exec=i3-gnome 6 | Name=i3-gnome 7 | Type=Application 8 | X-GNOME-Autostart-Notify=false 9 | X-GNOME-Autostart-Phase=WindowManager 10 | X-GNOME-Provides=windowmanager 11 | X-GNOME-WMName=i3 12 | -------------------------------------------------------------------------------- /session/i3-gnome.session: -------------------------------------------------------------------------------- 1 | # -*- mode: conf -*- 2 | 3 | [GNOME Session] 4 | Name=i3-gnome 5 | RequiredComponents=gnome-settings-daemon;i3-gnome; 6 | --------------------------------------------------------------------------------