Start work on a new welcome screen: manjaro-hello

manjaro-welcome
manjaro-hello

#1

Hi ! I’ve just started to work on a new welcome screen for Manjaro.

Warning: It’s just a prototype, many things will changed along developpement thanks to your feedback.

Manjaro-hello: Github repo

Why a new Manjaro Welcome Screen ?

Manjaro-hello is widely inspired by manjaro-welcome. I’ve started to work on a new welcome screen because I think that the current has several defects, some of which are inherited from the technologies used.

  • First, it is based on Gtk3 but because of the use of Webkit and its old Python binding, it is forced to use Gtk2.
  • All the app content is displayed by using HTML that is rendered by Webkit. This makes the evolution of the software very complicated. For example, it is very hard to make a translation system.
  • By using web technologies and Webkit, the renderer is a little bit slower than using native technologies.
  • Can’t know if each link will be open in an external browser or in app.

For all this reasons, I have chosen to build a new software from scratch but keeping the original structure.

Currently, manjaro-hello has all the major features of manjaro-welcome plus a translation system.

  • Interface is translated using gettext and po files. (po/)
  • Pages are translated using differents files. (data/pages)

What goals ?

The first goal of the project is to build a powerful welcome screen who welcome the new user and help him to discover our favorite distribution :).

Finnaly, the second goal is to push it to replace the original project.

Technologies

Manjaro-hello is build with Python, Gtk3 and Glade.

TODO

For the moment, even if the soft works, it is not finished.

  • We have to test it and fix bugs.
  • Make translations to distribute it in all the world.

Please make me feedback on the initiative and say me if you are agree with the approach.
(I have nothing against manjaro-welcome developpers and contributers, they made a very good soft, I will be very happy if they are contributing to this project.)

Test Preview

git clone https://github.com/Huluti/manjaro-hello.git
cd manjaro-hello
sh launch.sh

Manjaro Cinnamon 17.0 (Alpha 1)
Manjaro i3 17.0 (Alpha 1)
[Testing Update] 2016-12-24 - KDE Apps 16.12, KDE Framework 5.29, Libreoffice, QT5, Python
#2

transifex is used for other manjaro projects to get translations:

please make manjaro-hello also compatible with transifex.


#3

Do I have to join existing team or create organization ?


#4

i do not know, who has access to transifex and can add manjaro-hello.

just create a test account on transifex and test, whether manjaro-hello works with it.
if this is the case, try to contract kirek or phil on github:


they probably know how to get manjaro-hello into the “official” manjaro transifex page…


#5

It’s good! Transifex works great with manjaro-hello. We use same file formats (pot, po).


#6

Current looking with Maia theme:



with Adwaita theme:


Test it with the commands:

git clone https://github.com/Huluti/manjaro-hello.git
cd manjaro-hello
sh launch.sh

Please make me feedback!


#7

Just added install options in live sessions: unlike manjaro-welcome this section appears below the three main sections. Don’t forget to give me feedback ;).


#8

Hello! In witch way do i change the language? If Manjaro-hello has been started from the installation media you should be able to choose your language if available although the locale is set to another language (i do not know but think it’s english).


#9

Thank’s ! I’ll work on this !


#10

@Neutrino, I’ve just added the possibility to choose language using a dropdown.

To re-test manjaro-welcome, due to changes to vars used in config file, please delete manjaro-hello.json in .config folder.

rm ~/.config/manjaro-hello.json

Then:

git clone https://github.com/Huluti/manjaro-hello.git
cd manjaro-hello
sh launch.sh

Current looking:


Please make me suggestions and reports bugs.


#11

First i searched the dropdown for changing the language because it’s an unusual place for it. But i think, it’s ok there.

My question: Is the real change of the language at the moment not implemented because i get only English and if i change it to French the window will be reload but in English? I tested it with the setting LANG=“de_DE.utf8” and don’t know where locale.getlocale() read the desktop language.

Edit: The file ~/.config/manjaro-hello.json looks like {“autostart”: false, “locale”: “fr_FR”} and i get the English texts.


#12

I have just encountered this problem on another pc. I am currently investigating the cause. Thank you for reporting this issue.


#13

same problem as Neutrino : no .mo loaded
if i create pages in /src/pages/fr_FR/ , ok i have these “french” pages


#14

I have found the origin of the problem, Glade need to use locale module instead of gettext module: http://askubuntu.com/a/141104.
However, I have not found yet how change language manually using this method (it use the default locale setting).

@papajoke, yes the pages are translated using an other way, it’s two different models.

EDIT: Language selection is temporarily disable until I find a solution.


#15

sometimes when i start it kwin draws its own decoration… (really hate CSD because of things like this)

in the documentation/support/project area, why are there buttons and links? it looks quite messy :joy:

€dit: its really hard to resize the window only with the mouse because the grabbing area is a little small with only 1px on every side

Otherwise nice work :slight_smile:


#16
  • I’ll try to get info about this CSD strange behaviour.

  • Better ?


  • This parameter depends of your theme.

Thank’s for your feedback!


#17

@huluti: Are you able to change the language in ~/.config/manjaro-hello.json and relaod the app with the other language?


#18

@Neutrino: No, I retrieve correctly the language from the config file but can’t load language. In fact, the problem seems to be part of how Python gettext module is written. It is explain in this page http://ebanshi.cc/questions/2872556/how-to-translate-pygtk-glade-gtk-builder-application.

In summary, using Glade, the locale module must be used instead of pure python gettext module. But because of this, we are forced to use the locale.setlocale() method which requires that the locale also be installed on the system.

I confess I hardly see any solution and that I need help. If anyone has an idea, I’m interested.


#19

@huluti: Excellent job my friend. Looks really great. Keep it up and keep me posted. Looking forward to merge this for Manjaro v17.0 release next year after my Caribbean Vacation.


#20

@huluti: I saw yesterday my first pthyon-code. In addition i don’t like object-oriented languages although i learned java and C++ in the past but didn’t used it. My language is C an the first steps with C i took on the Commodore Amiga.

Am i right if i say that python can only use the language which is set in the environment variable LANG or a default language?

The method locale.setlocale() is called from your program. Does it mean that the locale(?) must be installed?