OSDN Git Service

2021.01.14 Update
[rebornos/cnchi-gnome-osdn.git] / Cnchi / desktop_info.py
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3 #
4 #  desktop_info.py
5 #
6 #  Copyright © 2013-2019 RebornOS
7 #
8 #  This file is part of Cnchi.
9 #
10 #  Cnchi is free software; you can redistribute it and/or modify
11 #  it under the terms of the GNU General Public License as published by
12 #  the Free Software Foundation; either version 3 of the License, or
13 #  (at your option) any later version.
14 #
15 #  Cnchi is distributed in the hope that it will be useful,
16 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
17 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 #  GNU General Public License for more details.
19 #
20 #  The following additional terms are in effect as per Section 7 of the license:
21 #
22 #  The preservation of all legal notices and author attributions in
23 #  the material or in the Appropriate Legal Notices displayed
24 #  by works containing it is required.
25 #
26 #  You should have received a copy of the GNU General Public License
27 #  along with Cnchi; If not, see <http://www.gnu.org/licenses/>.
28
29
30 """ Desktop Environments information """
31
32 # Disabled desktops(in DESKTOPS_DEV = DESKTOPS : "enlightenment", "windows", "apricity"
33 # Enabled desktops
34
35 DESKTOPS = ["base", "cinnamon", "deepin",
36             "gnome", "kde", "mate", "openbox", "xfce"]
37
38 DESKTOPS_DEV = DESKTOPS + ["budgie", "i3", "lxqt", "pantheon"]
39
40 DESKTOPS_A11Y = ["gnome", "mate", "apricity"]
41
42 DESKTOP_ICONS_PATH = "/usr/share/cnchi/data/icons"
43
44 '''
45 MENU - Size appropriate for menus (16px).
46 SMALL_TOOLBAR - Size appropriate for small toolbars (16px).
47 LARGE_TOOLBAR - Size appropriate for large toolbars (24px)
48 BUTTON - Size appropriate for buttons (16px)
49 DND - Size appropriate for drag and drop (32px)
50 DIALOG - Size appropriate for dialogs (48px)
51 '''
52
53 # Descriptive names
54 NAMES = {
55     'apricity': "Original Apricity Experience",
56     'base': "Base",
57     'cinnamon': "Cinnamon",
58     'deepin': "Deepin",
59     'pantheon': "Pantheon",
60    'windows':"Windows Interface",
61     'gnome': "GNOME",
62     'kde': "KDE",
63     'mate': "MATE",
64     'openbox': "Openbox",
65     'xfce': "Xfce",
66     'budgie': "Budgie",
67     'enlightenment': "Enlightenment",
68     'i3': "i3",
69     'lxqt': "LXQt",
70 }
71
72 LIBS = {
73     'gtk': ["apricity", "cinnamon", "deepin", "pantheon", "gnome", "mate", "openbox", "xfce", "budgie", "enlightenment", "i3", "windows"],
74     'qt': ["kde", "lxqt"]
75 }
76
77 ALL_FEATURES = ["a11y", "aur", "bluetooth", "broadcom", "maintenance", "cups", "chromium", "email", "dropbox", "firefox", "firefox-developer-edition", "google-chrome", "firewire", "opera", "hardinfo", "hunspell", "vivaldi", "games", "graphics", "gtk-play", "hardinfo", "qt-play", "movie", "graphic_drivers", "lamp", "lts", "freeoffice", "wps-office", "libreoffice", "redshift", "power", "sshd", "spotify", "visual", "vlc", "nautilus", "nemo", "qownnotes", "wallpapers", "wine"]
78
79 # Not all desktops have all features
80 EXCLUDED_FEATURES = {
81     'base': ["bluetooth", "chromium", "maintenance", "dropbox", "email", "firefox", "firefox-developer-edition", "google-chrome", "firewire", "opera", "vivaldi", "games", "graphic_drivers", "graphics", "hardinfo", "hunspell", "freeoffice", "wps-office", "libreoffice", "visual", "vlc", "nautilus", "nemo", "qownnotes", "qt-play", "movie", "gtk-play", "qt-play", "power", "redshift", "spotify", "wallpapers", "wps-office", "libreoffice", "freeoffice"],
82     'apricity': ["lamp", "visual", "nautilus", "qt-play"],
83     'cinnamon': ["lamp", "visual", "nemo", "qt-play"],
84     'deepin': ["lamp", "visual", "qt-play"],
85     'pantheon': ["lamp", "visual", "qt-play", "nemo"],
86    'windows': ["lamp", "visual", "qt-play", "nemo"],
87     'gnome': ["lamp", "visual", "nautilus", "qt-play"],
88     'kde': ["lamp", "visual", "gtk-play"],
89     'mate': ["lamp", "visual", "qt-play"],
90     'openbox': ["lamp", "qt-play"],
91     'xfce': ["lamp", "visual", "qt-play"],
92     'budgie': ["lamp", "visual", "qt-play"],
93     'enlightenment': ["lamp", "visual", "qt-play"],
94     'i3': ["lamp", "qt-play"],
95     'lxqt': ["lamp", "visual", "gtk-play"]
96 }
97
98 # Session names for lightDM setup (/usr/share/xsessions)
99 SESSIONS = {
100     'apricity' : 'gnome',
101     'cinnamon': 'cinnamon',
102     'deepin': 'deepin',
103     'pantheon': 'pantheon',
104     'gnome': 'gnome',
105     'kde': 'plasma',
106     'mate': 'mate',
107     'openbox': 'openbox',
108     'xfce': 'xfce',
109     'budgie': 'budgie-desktop',
110     'enlightenment': 'enlightenment',
111     'i3': 'i3',
112     'lxqt': 'lxsession',
113    'windows': 'windows'
114 }
115
116
117 # See http://docs.python.org/2/library/gettext.html "22.1.3.4. Deferred translations"
118 def _(message):
119     return message
120
121
122 DESCRIPTIONS = {
123     'base': _("This option will install RebornOS as command-line only system, "
124               "without any type of graphical interface. After the installation you can "
125               "customize RebornOS by installing packages with the command-line package manager."),
126    'apricity': _("Apricity OS is a now discontinued Linux distro in the Arch Linux family that simply  "
127                         "offered a highly customized GNOME dekstop experience that combined beauty with "
128                         "funcionality. With this option, the original Apricity look and feel is finally revivied! Experience "
129                          "it now on RebornOS."),
130     'cinnamon': _("Cinnamon is a Linux desktop which provides advanced, "
131                   "innovative features and a traditional desktop user experience. "
132                   "Cinnamon aims to make users feel at home by providing them with "
133                   "an easy-to-use and comfortable desktop experience."),
134     'deepin': _("IMPORTANT: Keep in mind that the Deepin desktop can often be unstable. "
135                 "This does not depend on us, but on the developers of Deepin who "
136                 "usually upload BETA versions of the desktop or some components in the "
137                 "stable repositories of Arch Linux."),
138     'pantheon': _("Pantheon is the desktop environment that Elementary OS runs on. "
139                   "While true Pantheon is too unstable for RebornOS to offer, we "
140                   "have tried to offer the next best thing. By selecting Pantheon, "
141                   "you will get Elementary OS's good looks on a highly customized desktop "
142                   "running Cinnamon underneath. Through this, you will be able to run "
143                   "the majority of Elementary OS's applications and experience their "
144                   "stunning style and theming - all in a stable system."), 
145     'gnome': _("GNOME 3 is an easy and elegant way to use your "
146                "computer. It features the Activities Overview which "
147                "is an easy way to access all your basic tasks."),
148
149     'kde': _("If you are looking for a familiar working environment, KDE's "
150              "Plasma Desktop offers all the tools required for a modern desktop "
151              "computing experience so you can be productive right from the start."),
152
153     'mate': _("MATE is an intuitive, attractive, and lightweight desktop "
154               "environment which provides a more traditional desktop "
155               "experience. Accelerated compositing is supported, but not "
156               "required to run MATE making it suitable for lower-end hardware."),
157
158     'openbox': _("Not actually a desktop environment, Openbox is a highly "
159                  "configurable window manager. It is known for its "
160                  "minimalistic appearance and its flexibility. It is the most "
161                  "lightweight graphical option offered by RebornOS. Please "
162                  "Note: Openbox is not recommended for users who are new to Linux."),
163
164     'xfce': _("Xfce is a lightweight desktop environment. It aims to "
165               "be fast and low on system resources, while remaining visually "
166               "appealing and user friendly. It suitable for use on older "
167               "computers and those with lower-end hardware specifications. "),
168
169     'budgie': _("Budgie is the flagship desktop of Solus and is a Solus project. "
170                 "It focuses on simplicity and elegance. Written from scratch with "
171                 "integration in mind, the Budgie desktop tightly integrates with "
172                 "the GNOME stack, but offers an alternative desktop experience."),
173
174     'enlightenment': _("Enlightenment is not just a window manager for Linux/X11 "
175                        "and others, but also a whole suite of libraries to help "
176                        "you create beautiful user interfaces with much less work"),
177
178     'i3': _("Is a tiling window manager, completely written from scratch. "
179                     "i3 is primarily targeted at advanced users and developers. "
180                     "Target platforms are GNU/Linux and BSD operating systems."),
181
182     'lxqt': _("LXQt is the next-generation of LXDE, the Lightweight Desktop "
183               "Environment. It is lightweight, modular, blazing-fast, and "
184               "user-friendly."),
185    
186    'windows': _("While I am sure you have all heard of Windows, this option "
187                            "does NOT truly offer you straight up Windows. This is Linux after all, " 
188                            "not Microsoft. However, what this option DOES allow you to experience, "
189                            "is a Windows-like desktop running Cinnamon underneath, made to look "
190                            "and act like the Windows 10 you are already familiar with. Made with Linux "
191                           "newbies specifically in mind, this option should hopefully ensure you have "
192                           "an easy, hassle free transition to Linux.")
193 }
194
195 # Delete previous _() dummy declaration
196 del _