This repository has been archived by the owner on Nov 18, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Separate notifications from the shell.
- Loading branch information
0 parents
commit 27f1d14
Showing
98 changed files
with
7,100 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
build/ | ||
*.user |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
This is Green Island, the Wayland compositor for the Hawaii desktop. | ||
|
||
Authors | ||
======= | ||
|
||
Pier Luigi Fiorini <[email protected]> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
project(GreenIsland) | ||
|
||
cmake_minimum_required(VERSION 2.8.7) | ||
|
||
# Enable automoc and include current directory | ||
set(CMAKE_AUTOMOC ON) | ||
set(CMAKE_INCLUDE_CURRENT_DIR ON) | ||
|
||
# Set version | ||
set(GREENISLAND_VERSION_MAJOR 0) | ||
set(GREENISLAND_VERSION_MINOR 0) | ||
set(GREENISLAND_VERSION_PATCH 0) | ||
set(GREENISLAND_VERSION_STRING "${GREENISLAND_VERSION_MAJOR}.${GREENISLAND_VERSION_MINOR}.${GREENISLAND_VERSION_PATCH}") | ||
|
||
# Installation directories | ||
include(HawaiiInstallDirs) | ||
|
||
# Make CPack available to easy generate binary packages | ||
include(CPack) | ||
|
||
# Add custom uninstall target | ||
configure_file( | ||
"${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in" | ||
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" | ||
IMMEDIATE @ONLY) | ||
add_custom_target(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake") | ||
|
||
# Build flags | ||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -fvisibility-inlines-hidden -Wall -std=c++0x") | ||
|
||
# Assume release build by default | ||
if(NOT CMAKE_BUILD_TYPE) | ||
set(CMAKE_BUILD_TYPE "RelWithDebInfo" CACHE STRING "" FORCE) | ||
endif() | ||
|
||
# Disable debug output for release builds | ||
if(CMAKE_BUILD_TYPE MATCHES "^[Rr]elease$") | ||
add_definitions(-DQT_NO_DEBUG_OUTPUT) | ||
endif() | ||
|
||
# Find Qt5 | ||
find_package(Qt5DBus REQUIRED) | ||
if(NOT Qt5DBus_FOUND) | ||
message(FATAL_ERROR "Qt5DBus module is required!") | ||
endif() | ||
find_package(Qt5Gui REQUIRED) | ||
if(NOT Qt5Gui_FOUND) | ||
message(FATAL_ERROR "Qt5Gui module is required!") | ||
endif() | ||
find_package(Qt5Widgets REQUIRED) | ||
if(NOT Qt5Widgets_FOUND) | ||
message(FATAL_ERROR "Qt5Widgets module is required!") | ||
endif() | ||
find_package(Qt5Qml REQUIRED) | ||
if(NOT Qt5Qml_FOUND) | ||
message(FATAL_ERROR "Qt5Qml module is required!") | ||
endif() | ||
find_package(Qt5Quick REQUIRED) | ||
if(NOT Qt5Quick_FOUND) | ||
message(FATAL_ERROR "Qt5Quick module is required!") | ||
endif() | ||
find_package(Qt5Compositor REQUIRED) | ||
if(NOT Qt5Compositor_FOUND) | ||
message(FATAL_ERROR "Qt5Compositor module is required!") | ||
endif() | ||
|
||
# Find Vibe libraries | ||
find_package(VibeCore REQUIRED) | ||
if(NOT VibeCore_FOUND) | ||
message(FATAL_ERROR "VibeCore module is required!") | ||
endif() | ||
|
||
# Find pkg-config | ||
find_package(PkgConfig "0.22" REQUIRED) | ||
|
||
# Find GLESv2 library | ||
pkg_check_modules(GLESV2 glesv2 REQUIRED) | ||
|
||
# Subdirectories | ||
add_subdirectory(data) | ||
add_subdirectory(headers) | ||
add_subdirectory(src) |
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,100 @@ | ||
Green Island | ||
============ | ||
|
||
This is Green Island, the Wayland compositor for the Hawaii desktop. | ||
|
||
The name comes from Kure Atoll, Hawaii, see here: | ||
http://en.wikipedia.org/wiki/Green_Island,_Hawaii | ||
|
||
It's a simple Qt-based Wayland compositor that can be extended by | ||
specific shells for different kind of workflows. At the moment | ||
the focus is on the desktop shell, but in the future a tablet | ||
version is expected to see the light of the day. | ||
|
||
Dependencies | ||
============ | ||
|
||
In order to build and install Green Island, you will need a complete | ||
and up to date Wayland, Qt 5 and Vibe development environment. | ||
|
||
The Wayland site has some information to bring it up: | ||
|
||
http://wayland.freedesktop.org/building.html | ||
|
||
More information about building Qt 5 can be found here: | ||
|
||
http://qt-project.org/wiki/Building-Qt-5-from-Git | ||
|
||
Vibe and other Hawaii components can be easily built with our | ||
Continuous Integration tool, read the instructions here: | ||
|
||
https://github.com/hawaii-desktop/hawaii | ||
|
||
The Continuous Integration tool builds the whole desktop. | ||
|
||
Build | ||
===== | ||
|
||
Building Green Island is a piece of cake. | ||
|
||
Assuming you are in the source directory, just create a build directory | ||
and run cmake: | ||
|
||
mkdir build | ||
cd build | ||
cmake -DCMAKE_INSTALL_PREFIX=/system .. | ||
|
||
To do a debug build the last command can be: | ||
|
||
cmake -DCMAKE_INSTALL_PREFIX=/system -DCMAKE_BUILD_TYPE=Debug .. | ||
|
||
To do a release build instead it can be: | ||
|
||
cmake -DCMAKE_INSTALL_PREFIX=/system -DCMAKE_BUILD_TYPE=Release .. | ||
|
||
The CMAKE_BUILD_TYPE parameter allows the following values: | ||
|
||
Debug: debug build | ||
Release: release build | ||
RelWithDebInfo: release build with debugging information | ||
|
||
Installation | ||
============ | ||
|
||
The installation is easy-peasy, it's just a matter of typing: | ||
|
||
sudo make install | ||
|
||
from the build directory. | ||
|
||
Run as a X window | ||
================= | ||
|
||
You can run Green Island in a X11 window for development and debugging purpose. | ||
Remember to set the environment variable before running it: | ||
|
||
```sh | ||
export XDG_RUNTIME_DIR=/tmp | ||
greenisland -platform xcb | ||
``` | ||
|
||
Run from KMS | ||
============ | ||
|
||
On production systems you can run Green Island under KMS as root: | ||
|
||
```sh | ||
export XDG_RUNTIME_DIR=/tmp | ||
export QT_KMS_TTYKBD=1 | ||
greenisland -platform kms -plugin EvdevMouse -plugin EvdevKeyboard -plugin EvdevTouch | ||
``` | ||
|
||
**Remember:** at the moment Green Island under KMS must be run as the root user. | ||
|
||
Run on RaspberryPi | ||
================== | ||
|
||
```sh | ||
export XDG_RUNTIME_DIR=/tmp | ||
greenisland -platform eglfsrpi | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
IF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") | ||
message(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"") | ||
endif(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") | ||
|
||
file(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files) | ||
string(REGEX REPLACE "\n" ";" files "${files}") | ||
foreach(file ${files}) | ||
message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"") | ||
if(EXISTS "$ENV{DESTDIR}${file}") | ||
exec_program("@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\"" | ||
OUTPUT VARIABLE rm_out RETURN_VALUE rm_retval) | ||
if(NOT "${rm_retval}" STREQUAL 0) | ||
message(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"") | ||
endif(NOT "${rm_retval}" STREQUAL 0) | ||
else(EXISTS "$ENV{DESTDIR}${file}") | ||
message(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.") | ||
endif(EXISTS "$ENV{DESTDIR}${file}") | ||
endforeach(file ${files}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
add_subdirectory(settings) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
set(FILES | ||
org.hawaii.greenisland.settings | ||
) | ||
|
||
install(FILES ${FILES} DESTINATION ${CMAKE_INSTALL_SETTINGSDIR}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<settings xmlns="http://www.maui-project.org/standards/settings/1.0" | ||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
xsi:schemaLocation="http://www.maui-project.org/standards/settings/1.0 | ||
http://www.maui-project.org/standards/settings/1.0/settings.xsd"> | ||
<schema name="org.hawaii.greenisland.desktop"/> | ||
<group name="launcher"> | ||
<key name="icon-size" type="UInt"> | ||
<summary>Launcher Icon Size</summary> | ||
<description>Size of Launcher icons.</description> | ||
<default>64</default> | ||
</key> | ||
<key name="orientation" type="Enum"> | ||
<summary>Launcher Orientation</summary> | ||
<description>Determines the Launcher orientation. Possible values are "horizontal" or "vertical".</description> | ||
<default>horizontal</default> | ||
<choices name="LauncherOrientation"> | ||
<choice name="horizontal"/> | ||
<choice name="vertical"/> | ||
</choices> | ||
</key> | ||
</group> | ||
</settings> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
add_subdirectory(GreenIsland) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
set(HEADERS | ||
VIndicator | ||
VIndicatorPlugin | ||
VShell | ||
VShellPlugin | ||
VGreenIslandGlobal | ||
) | ||
|
||
install(FILES ${HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/GreenIsland) | ||
|
||
# Create the cmakedirs.h header file | ||
configure_file(cmakedirs.h.in ${CMAKE_CURRENT_BINARY_DIR}/cmakedirs.h) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#include "vgreenislandglobal.h" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#include "vindicator.h" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#include "vindicatorplugin.h" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#include "vshell.h" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#include "vshellplugin.h" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
/**************************************************************************** | ||
* This file is part of Desktop Compositor. | ||
* | ||
* Copyright (c) 2012 Pier Luigi Fiorini | ||
* | ||
* Author(s): | ||
* Pier Luigi Fiorini <[email protected]> | ||
* | ||
* $BEGIN_LICENSE:GPL$ | ||
* | ||
* Desktop Compositor 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 3 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* Desktop Compositor 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 Desktop Compositor. If not, see <http://www.gnu.org/licenses/>. | ||
* | ||
* $END_LICENSE$ | ||
***************************************************************************/ | ||
|
||
#ifndef CMAKEDIRS_H | ||
#define CMAKEDIRS_H | ||
|
||
// GNUInstallDirs | ||
#define INSTALL_PREFIX "@CMAKE_INSTALL_PREFIX@" | ||
#define INSTALL_BINDIR "@CMAKE_INSTALL_FULL_BINDIR@" | ||
#define INSTALL_SBINDIR "@CMAKE_INSTALL_FULL_SBINDIR@" | ||
#define INSTALL_LIBEXECDIR "@CMAKE_INSTALL_FULL_LIBEXECDIR@" | ||
#define INSTALL_SYSCONFDIR "@CMAKE_INSTALL_FULL_SYSCONFDIR@" | ||
#define INSTALL_SHAREDSTATEDIR "@CMAKE_INSTALL_FULL_SHAREDSTATEDIR@" | ||
#define INSTALL_LOCALSTATEDIR "@CMAKE_INSTALL_FULL_LOCALSTATEDIR@" | ||
#define INSTALL_LIBDIR "@CMAKE_INSTALL_FULL_LIBDIR@" | ||
#define INSTALL_INCLUDEDIR "@CMAKE_INSTALL_FULL_INCLUDEDIR@" | ||
#define INSTALL_OLDINCLUDEDIR "@CMAKE_INSTALL_FULL_OLDINCLUDEDIR@" | ||
#define INSTALL_DATAROOTDIR "@CMAKE_INSTALL_FULL_DATAROOTDIR@" | ||
#define INSTALL_DATADIR "@CMAKE_INSTALL_FULL_DATADIR@" | ||
#define INSTALL_INFODIR "@CMAKE_INSTALL_FULL_INFODIR@" | ||
#define INSTALL_LOCALEDIR "@CMAKE_INSTALL_FULL_LOCALEDIR@" | ||
#define INSTALL_MANDIR "@CMAKE_INSTALL_FULL_MANDIR@" | ||
#define INSTALL_DOCDIR "@CMAKE_INSTALL_FULL_DOCDIR@" | ||
|
||
// HawaiiInstallDirs | ||
#define INSTALL_PLUGINSDIR "@CMAKE_INSTALL_FULL_PLUGINSDIR@" | ||
#define INSTALL_IMPORTSDIR "@CMAKE_INSTALL_FULL_IMPORTSDIR@" | ||
#define INSTALL_APPLICATIONSDIR "@CMAKE_INSTALL_FULL_APPLICATIONSDIR@" | ||
#define INSTALL_SETTINGSDIR "@CMAKE_INSTALL_FULL_SETTINGSDIR@" | ||
|
||
#endif // CMAKEDIRS_H |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#include "../../src/libgreenisland/vgreenislandglobal.h" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#include "../../src/libgreenisland/vindicator.h" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#include "../../src/libgreenisland/vindicatorplugin.h" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#include "../../src/libgreenisland/vshell.h" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#include "../../src/libgreenisland/vshellplugin.h" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
add_subdirectory(libgreenisland) | ||
add_subdirectory(greenisland) | ||
add_subdirectory(plugins) | ||
add_subdirectory(imports) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
include_directories( | ||
${Qt5Core_PRIVATE_INCLUDE_DIRS} | ||
${Qt5Gui_PRIVATE_INCLUDE_DIRS} | ||
${Qt5Widgets_INCLUDE_DIRS} | ||
${Qt5Compositor_INCLUDE_DIRS} | ||
${VibeCore_INCLUDE_DIRS} | ||
${CMAKE_SOURCE_DIR}/headers | ||
${CMAKE_SOURCE_DIR}/headers/GreenIsland | ||
${CMAKE_BINARY_DIR}/headers/GreenIsland | ||
) | ||
|
||
add_definitions(${Qt5Compositor_DEFINITIONS}) | ||
|
||
set(SOURCES | ||
main.cpp | ||
) | ||
|
||
add_executable(greenisland ${SOURCES}) | ||
set_target_properties(greenisland PROPERTIES | ||
COMPILE_FLAGS ${Qt5Compositor_EXECUTABLE_COMPILE_FLAGS} | ||
LINK_FLAGS -L${GLESV2_LIBDIR} | ||
) | ||
target_link_libraries(greenisland | ||
${Qt5Widgets_LIBRARIES} | ||
${Qt5Compositor_LIBRARIES} | ||
${VibeCore_LIBRARIES} | ||
${GLESV2_LIBRARIES} | ||
GreenIsland | ||
) | ||
|
||
install(TARGETS greenisland DESTINATION ${CMAKE_INSTALL_BINDIR}) |
Oops, something went wrong.