PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Okki : Faire passer GNOME pour macOS

samedi 18 mars 2017 à 22:23
GNOME 3.22 façon macOS

On l’a vu précédemment, il suffit de deux ou trois extensions pour transformer votre GNOME en quelque chose de plus proche de Windows, avec panel au bas de l’écran et autre menu principal. Et comme nous allons le voir, il n’est guère plus difficile de le faire ressembler à macOS ;-)

Mais avant de commencer, petit rappel. Les dossiers commençant par un point sont des dossiers cachés. Pour pouvoir les afficher, vous pouvez soit passer par l’icône hamburger du gestionnaire de fichiers pour activer l’option Afficher les fichiers cachés, soit utiliser le raccourci clavier Ctrl+h. Si un dossier est manquant, vous pouvez sans problème le créer, mais n’oubliez pas le point en début de nom.

1. Installation du thème Gnome-OSX

Le thème contient des variantes claires et sombres pour le shell, ainsi qu’un thème de fenêtres avec ou sans transparence. Une fois les archives téléchargées, décompressez-les dans le dossier .themes de votre dossier personnel.

Il vous suffit ensuite de vous rendre dans l’Outil de personnalisation de GNOME, de sélectionner l’onglet Apparence puis de choisir Gnome-OSX en tant que thèmes GTK+ et Shell.

Selon votre distribution, si le thème du Shell n’est pas accessible, il vous faudra activer ou installer l’extension User Themes.

2. Installation du thème d’icônes La Capitaine

La Capitaine est un thème d’icônes s’inspirant du style très coloré de macOS. Une fois téléchargée, il vous suffit de décompresser l’archive dans le dossier .icons de votre dossier personnel.

Là encore, il vous suffit de passer par l’Outil de personnalisation de GNOME, de sélectionner l’onglet Apparence puis de choisir le thème d’icônes La Capitaine.

3. Ajouter un dock

Il existe plusieurs docks qui s’intègrent bien à GNOME, comme l’extension Dash to Dock ou l’application Plank.

Dash to Dock ne ressemblant pas particulièrement à celui de macOS par défaut, il vous suffit pour cela d’accéder à ses préférences, de vous rendre dans l’onglet Apparence, de choisir le blanc comme couleur du dock puis de diminuer son opacité.

Dans le cas de Plank, il existe des thèmes tout prêts, tels que Gnosemite, qui le feront aussitôt ressembler à celui de macOS. Une fois le thème téléchargé, il vous suffit de décompresser l’archive dans le dossier .local/share/plank/themes de votre dossier personnel.

4. Changer de police

Sur macOS, Apple utilise la police San Franciso, qui fait partie de la famille Lucida Grande. Malheureusement, cette police étant non libre, celle qui s’en rapprochera le plus sera Garuda.

Là encore, il faudra passer par l’Outil de personnalisation de GNOME, sélectionner l’onglet Polices, puis choisir Garuda Bold pour les titres de fenêtres, ainsi que Garuda Regular pour le reste de l’interface.

Bien évidemment, cette partie est facultative et vous êtes libre d’utiliser la police de votre choix.

5. Passer les boutons de fenêtres à gauche

Il vous faut cette fois-ci lancer l’Éditeur dconf, vous rendre ensuite dans /org/gnome/desktop/wm/preferences/button-layout puis changer la valeur par close,minimize,maximize:

Pour annuler la modification, il vous suffira d’activer l’option Utiliser la valeur par défaut.

Et voilà, grâce à ce statut social nouvellement acquis, vous pourrez vous aussi pavoiser auprès de vos amis :p

Gravatar de Okki
Original post of Okki.Votez pour ce billet sur Planet Libre.

Okki : Configurer votre environnement de façon plus traditionnelle

samedi 18 mars 2017 à 17:10
GNOME 3.22 avec l’extension Dash to Panel et des icônes sur le bureau

Dès que l’on entend parler de GNOME sur les forums, vous pouvez être certain qu’une ou plusieurs personnes vont intervenir pour signaler ô combien elles n’aiment pas son ergonomie, préférant de loin d’autres environnements plus traditionnels, disposant par exemple d’une barre des tâches et d’un menu principal.

S’ensuit ensuite une série d’arguments de mauvaise foi, comme quoi si ça ne correspond pas par défaut exactement à ce que l’on recherche et qu’il faut installer une palanquée d’extensions pour obtenir le résultat attendu (avec en général un rappel comme quoi c’était bien présent du temps de GNOME 2), c’est qu’il s’agit fatalement d’un mauvais environnement. Ou, du moins, qu’il ne répond absolument pas à leur besoin.

Maintenant, si de modifier son environnement était réellement long et fastidieux, ça pourrait se comprendre. Mais ce n’est pas le cas. En comptant large, vous verrez qu’il faut moins de cinq minutes pour obtenir un environnement plus traditionnel, et que ça n’a absolument rien de compliqué. Aucune ligne de commande, aucune édition de fichier de configuration ou autre action obscure. C’est réellement à la portée du premier venu.

Mais avant de commencer, on pourrait se poser la question de savoir pourquoi les équipes de GNOME ont fait de tels choix. L’argument qui revient le plus souvent, c’est qu’ils recherchaient un environnement simple, comportant le moins de distractions possible, pour que l’on puisse se concentrer sur ce qui compte. Personnellement, je perçois également GNOME comme une feuille blanche qui me laisse le configurer à loisir.

Chaque personne étant différente, elle possédera une vision toute aussi différente de ce que sera le bureau idéal. Certaines personnes adorent disposer de nombreuses icônes sur leur bureau, quand d’autres ont horreur de ça. Certaines personnes souhaitent disposer d’un panel au bas de l’écran, quand d’autres le préfèrent en haut. Certains préfèrent encore disposer d’un dock plutôt que d’un panel… quand d’autres font le choix de n’avoir ni l’un ni l’autre.

À partir de là, à l’inverse d’un Windows ou d’un macOS, d’un MATE ou d’un Cinnamon qui vous imposeraient leurs choix, GNOME vous laisse la possibilité d’obtenir facilement et rapidement ce qui vous convient le mieux.

Nous allons donc aujourd’hui le configurer à la manière d’un Windows ou d’un KDE Plasma, avec panel au bas de l’écran et autre menu principal, puis dans un prochain article, nous verrons qu’il est finalement tout aussi simple d’obtenir un clone de macOS ;-)

1. Dash to Panel

Prévisualisation des fenêtres quand on passe le curseur au dessus d’une icône

Cette extension va ajouter un panel au bas de l’écran, vous permettant ainsi de pouvoir basculer rapidement d’une application à l’autre ou d’accéder rapidement à vos applications favorites. Bien évidemment, l’extension dispose de nombreuses options, concernant aussi bien son style : emplacement du panel, en bas ou en haut de l’écran, la taille des icônes ou du panel, le choix des indicateurs pour distinguer les applications en cours d’utilisation (avec ou sans le focus), l’emplacement de l’horloge, la présence ou non de boutons pour voir le bureau ou accéder au mode activités, et bien d’autres encore.

2. TopIcons Plus

Cette extension permet de déplacer les icônes de notifications (Steam, Skype, votre client BitTorrent…) du tiroir de messagerie vers le panel.

3. Gno-Menu

Gno-Menu en mode liste, suivi d’une partie de ses préférences

Il existe de nombreuses extensions GNOME offrant un menu principal, mais celle-ci semble plutôt complète : accès rapide à vos applications (fréquemment utilisées, favorites, par catégories…), dossiers et autres signets. Une série de boutons permettent également un accès rapide à la mise en veille, l’extinction, le verrouillage de la session, le changement d’utilisateur. L’extension dispose bien évidemment de nombreuses options de personnalisation : panneau normal ou compact, la catégorie à afficher par défaut, le choix d’une vue en liste ou en grille, la taille des icônes, le choix du raccourci clavier… jusqu’au nom que vous préférez voir affiché pour votre menu.

Le menu respecte bien évidemment votre thème. Il s’agit sur la capture du thème Arc dans sa version claire.

4. Icônes sur le bureau

L’outil de personnalisation de GNOME

Il vous suffit de lancer l’Outil de personnalisation de GNOME, de sélectionner l’onglet Bureau, puis d’activer d’option Icônes sur le bureau. Vous pouvez également choisir quelles icônes afficher : dossier personnel, serveurs réseau, corbeille, volumes montés.

5. Boutons pour minimiser / maximiser les fenêtres

Toujours dans l’Outil de personnalisation de GNOME, onglet Fenêtres, option Boutons de la barre de titre, vous pouvez activer indépendamment les boutons minimiser et maximiser.

Et voilà, c’est fini. Comme convenu, d’activer trois extensions et trois options dans l’outil de personnalisation n’aura pas pris plus de cinq minutes.

Pour ceux qui souhaiteraient aller encore plus loin, il existe également une extension pour désactiver le coin actif (No Topleft Hot Corner), pour choisir l’emplacement des notifications (Panel OSD), obtenir un panel transparent (Dynamic Panel Transparency) ou changer de bureau virtuel à l’aide de la molette de la souris (Top Panel Workspace Scroll).

Gravatar de Okki
Original post of Okki.Votez pour ce billet sur Planet Libre.

Articles similaires

blog-libre : Article dans la série 'Termux sur Android' : Des news

vendredi 17 mars 2017 à 17:00

Voilà une éternité que je n’ai pas parlé de Termux. Ce ne sera pas vraiment un article technique mais plutôt une sorte de carnet de bord.

Nouveaux téléphones

Termux est mon application coup de coeur sur Android, il est clair que je vais continuer à en parler pendant quelques temps. Elle est cependant loin d’être parfaite, j’ai rencontré de nombreux petits soucis et évidemment des limitations. Afin de faire des articles de qualité j’avais besoin de pousser plus loin mes tests notamment en ayant davantage de téléphones pour tester.

Ça tombe bien j’ai passé Madame d’un iPhone à un Samsung Galaxy A5 2016 et je suis passé d’un LG G3 à un LG G4 (Anniversaire, Noël, toussa). Je me retrouve donc avec 3 téléphones pour tester Termux et ça me met en joie ! Actuellement les 3 téléphones ont Termux installé dessus et je vais donc pouvoir tester plus en profondeur l’application.

Concernant le Samsung j’ai déjà pu constater des problèmes avec le clavier officiel, je n’ai pas encore testé avec Hacker’s Keyboard. Je prévois de passer le LG G3 sur LineageOS afin de tester les ROM disponibles et je prévois de rooter le LG G4. Je vais donc avoir des environnements différents intéressants à tester.

News de Termux et Termux:API

Voici quelques nouveautés/découvertes concernant Termux et Termux:API :

Scripts

J’avais tourné un peu autour du pot mais je n’avais jusqu’à récemment pas eu l’occasion de m’exercer sur des scripts avec Termux. J’ai repris au hasard mon script pour faire des Thumbnails sur Xubuntu en l’adaptant pour qu’il fonctionne sur Termux. Il est nécessaire d’installer les packages mpv et imagemagick. Je l’utilise ainsi bash thumbnail.sh /storage/external_SD/video1.mkv. On récupère le thumbnail dans le $HOME.

#!/data/data/com.termux/files/usr/bin/bash
# thumbnail.sh v0.1
#
# 07/03/2017
#

for i in "$@"; do
    tmp_dir=$(mktemp -d -p $HOME)
    mpv --vo=image --vo-image-format=png --vo-image-outdir="$tmp_dir" --no-audio -sstep 20 -end -20 "$i"
    montage $tmp_dir/*.png -geometry 200x+0+0 $HOME/"${i##*/}".png
    rm -r $tmp_dir
done

A noter que : 1/ Le package mpv a un bug il ne prend que le format png pour --vo-image-format, impossible de lui imposer du jpeg par exemple 2/ On effectue la plupart des opérations dans le $HOME… car ailleurs on ne peut généralement pas à cause des droits 3/ Remarquez "${i##*/}", je vous renvoie vers le Mémo Parameter Expansion

Voici une partie de la sortie de la commande termux-wifi-connectioninfo.

{
	"bssid": "f2:ca:e6:cc:4c:30",
	"frequency_mhz": 2472,
	"ip": "192.168.1.30",
	"link_speed_mbps": 72,
	"ssid": "wifi_casca"
}

Comme on peut le voir on peut récupérer le nom du réseau Wi-Fi entre autres. A partir de là on peut imaginer des scénarios sympas à la IFTTT : If réseau boulot then allumage/wol pcdebureau ou encore If réseau maison then envoi/termux-sms-send « Je viens de rentrer à la maison ».

Le futur

J’ai commencé à jouer avec Mosh, je compte évidemment en parler. Une fois le G3 sur LineageOS et Termux réinstallé dessus je vais le laisser un week-end au boulot dans le tiroir pour tenter de casser le mot de passe Wi-Fi (que je connais). Je voudrais voir ce que ça nécessite niveau consommation, si besoin je brancherai le téléphone sur une batterie externe type Aukey. Je compte m’en servir comme sonde et outil de pentest pour faire simple. Je vous tiens au jus ;)

Gravatar de blog-libre
Original post of blog-libre.Votez pour ce billet sur Planet Libre.

Littlewing : Installation de GNU/LINUX sur un lenovo thinkcentre m700

vendredi 17 mars 2017 à 15:58

J’ai décidé de changer de PC. J’ai opté pour un Lenovo thinkcentre m700 afin de gagner pas mal de place et perdre quelques décibels à l’utilisation 🙂

Pour info, voici les caractéristiques techniques du modèle acheté

 

 

Pour écouter la musique, j’ai également fait l’acquisition d’un DAC USB NUPRIME UDSD.

 

Après quelques backups fait sur windows 10 ( histoire de gérer le support plus tard), j’ai décidé d’installer GNU/LINUX.

J’ai tout d’abord cherché la compatibilité des différents matériaux. Pour le PC, je n’ai trouvé que l’info sur la compatibilité UBUNTU. Pour le nuprime, j’ai seulement trouvé la compatibilité avec le NAS SYNOLOGY sur le support NUPRIME. Vu que ce dernier est basé sur GNU/LINUX, j’étais plutôt confiant 🙂

Mon premier choix s’est tourné sur DEBIAN (8.7) …. et là j’ai galéré 🙁

L’installation s’est bien déroulé, mais

Après quelques tentatives de backport, passage en testing et voodoo, j’ai décidé d’installer UBUNTU LINUX 16.04 LTS.

Et oui je suis revenu sur UBUNTU :). Là, tout fonctionne parfaitement .

Bref tout va bien 🙂

Seul « petit » problème, j’ai essayé d’installer gnome-shell. J’ai sélectionné gdm3 au lieu de lightdm et j’ai eu un gros freeze de mon PC. Impossible de réparer ça. J’ai du réinstaller. Vu la vitesse, ce n’est pas trop grave.

J’ai décidé de rester pour l’instant sur UBUNTU avec le desktop UNITY. Peut-être que je basculerai sur la prochaine version de Debian quand elle sortira.

Je vous fait grâce de la liste des paquets que j’ai installé et de la configuration que j’applique. Il y a suffisamment de sites qui font ça mieux que moi 🙂

 

 

 

 

Gravatar de Littlewing
Original post of Littlewing.Votez pour ce billet sur Planet Libre.

Articles similaires

Benoît Boudaud : Python: Les ensembles (sets et frozensets)

vendredi 17 mars 2017 à 15:51

Pour une lecture plus agréable (page plus large), je vous invite à cliquer sur ce lien et à lire ce chapitre dans la rubrique consacrée au langage Python.

Aujourd’hui, nous allons aborder une notion moins connue du langage Python, à savoir les ensembles (sets et frozensets).

sete

Définition

Un ensemble est une collection non ordonnée d’objets uniques et immuables (en profondeur). La tentative d’insertion d’un doublon n’a absolument aucun effet et ne lève même pas d’exception. En revanche, la présence d’un élément modifiable tel qu’une liste par exemple lève l’exception ci-dessous:

TypeError: unhashable type: ‘list’

Puisqu’il s’agit d’un ensemble d’objets non ordonné, un set est idéal pour effectuer un test d’appartenance et je vais vous le prouver.

On trouve deux types d’ensembles:

Déclarer un set

Il y a deux manières de déclarer un set.

s = { "Hervé", "Jacky", "Didier", "Toufik"}
print(s)

Résultat: {‘Didier’, ‘Toufik’, ‘Hervé’, ‘Jacky’}.

Notez bien qu’il s’agit d’un ensemble non ordonné ce qui explique que print() retourne les éléments dans un ordre aléatoire.

s2 = set(["Geneviève", "Geneviève", (1,2,3), 7.56])
print(s2)

Résultat: {7.56, ‘Geneviève’, (1, 2, 3)}

Notez que j’ai déclaré mon set avec un doublon (« Geneviève »). Comme je l’ai déjà précisé dans l’introduction, celui-ci n’est pas pris en compte et ne lève même pas d’exception. Le set est une collection d’objets uniques.

 s = {}
print(type(s))

Résultat : 

 s = set()
print(type(s))

Résultat:

Pourquoi le set est préférable à la liste pour effectuer un test d’appartenance?

Une liste est une séquence. Elle contient des objets indicés. Lorsqu’on fait un test d’appartenance sur une liste, cette dernière est parcourue de l’indice 0 jusqu’à l’indice de l’objet recherché. Si la liste ne contient que dix éléments, le test d’appartenance est rapide mais si la liste contient cinquante millions d’éléments, la vitesse d’exécution s’en ressent. J’ai fait une courte vidéo pour vous montrer la différence entre une liste et un set contenant cinquante millions d’éléments.

Le set étant une implémentation de table de hachage, la vitesse d’exécution d’un test d’appartenance est identique quel que soit le nombre d’éléments qu’il contient.

Voici les trois exemples de code que j’ai exécutés dans la vidéo.

l = [i for i in range(50000000)]
for i in range(2, 8):
    if i in l:
        print(i, "appartient à la liste")
l = [i for i in range(50000000)]
for i in range(49999990, 49999999):
    if i in l:
        print(i, "appartient à la liste")
s = {i for i in range(50000000)}
for i in range(49999990, 49999999):
    if i in s:
        print(i, "appartient au set")

Aperçu de quelques méthodes associées aux sets

s = {"Kevin", "Kilian", "Morgane"}
s.add("Gustave")
print(s)

Résultat: {‘Morgane’, ‘Kilian’, ‘Gustave’, ‘Kevin’}

s = {"Kevin", "Kilian", "Morgane"}
s2 = {1, 2, 3}
s.update(s2)
print("s =", s)
print("s2 =", s2)

s = {1, 2, 3, ‘Kilian’, ‘Kevin’, ‘Morgane’}
s2 = {1, 2, 3}

Comme vous pouvez le constater, cette méthode rajoute les éléments de l’ensemble s2 dans l’ensemble s sans pour autant vider l’ensemble s2.

s = {"Kevin", "Kilian", "Morgane", "Gustave"}
s.remove("Kevin")
print(s)

Résultat: {‘Kilian’, ‘Morgane’, ‘Gustave’}

Attention! Avec set.remove(), Python lève une exception si vous essayez d’enlever un élément qui n’appartient pas au set.

s = {"Kevin", "Kilian", "Morgane", "Gustave"}
s.remove("Robert")
print(s)

KeyError: ‘Robert’

Pour éviter cela, utiliser la méthode set.discard() qui, elle, ne lèvera pas d’exception.

s = {"Kevin", "Kilian", "Morgane", "Gustave"}
s.discard("Robert")
print(s)

Résultat: {‘Morgane’, ‘Gustave’, ‘Kevin’, ‘Kilian’}

s = {"Kevin", "Kilian", "Morgane", "Gustave"}
s.clear()
print("s =", s)

Résultat: s = set()

Pour découvrir plus de méthodes associées aux sets, je vous invite à consulter la documentation officielle Python.

Aperçu de quelques opérations mathématiques associées aux sets

s = {"Kevin", "Kilian", "Morgane", "Gustave"}
s2 = {"Kevin", "Gustave"}
s3 = s - s2
print("s3 =", s3)

s3 = {‘Morgane’, ‘Kilian’}

s = {"Patrick", "Jacky"}
s2 = {"R12 Gordini", "Kronenbourg"}
s3 = s | s2
print("s3 =", s3)

s3 = {‘Kronenbourg’, ‘Jacky’, ‘R12 Gordini’, ‘Patrick’}

s = {"Patrick", "Jacky"}
s2 = {"R12 Gordini", "Jacky"}
s3 = s & s2
print("s3 =", s3)

s3 = {‘Jacky’}

Les frozensets

Les sets sont des objets modifiables donc il n’est pas possible d’utiliser un set comme clé de dictionnaire. En effet, je vous rappelle que les clés de dictionnaire doivent être immuables.

Il n’est pas possible non plus de placer un set dans un autre set car comme je l’ai déjà dit au début de ce chapitre, les éléments d’un set doivent être immuables dans toute leur profondeur. Cela signifie que ce genre de code va lever une exception:

s = { {"Jacky", "Hervé"}, 1, 3} # présence d'un set
print("s =", s)

TypeError: unhashable type: ‘set’

s = { 4, ([1, 2], 3)} # présence d'un tuple contenant une liste
print("s =", s)

TypeError: unhashable type: ‘list’

Pour remédier à cet inconvénient, on a inventé le frozenset que l’on pourrait traduire par ensemble gelé. Les frozensets sont des sets immuables. Par conséquent, certaines méthodes telles que add() ou remove() ne peuvent pas leur être associées. En revanche, ils peuvent appartenir à un set ou bien être utilisés comme clés de dictionnaire.

s = {1, 2, 3}
fr_s = frozenset(s)
print(type(fr_s))
tup = (1, 2, 3)
fr_s = frozenset(tup)
print(type(fr_s))
liste = [1, 2, 3]
fr_s = frozenset(liste)
print(type(fr_s))

Comme je l’ai écrit en début de paragraphe, une fois déclaré, un frozenset peut appartenir à un set car il est devenu immuable:

liste = [1, 2, 3]
fr_s = frozenset(liste)
s = {fr_s, 4, 5}
print("s =", s)

Résultat:  s = {5, frozenset({1, 2, 3}), 4}

Conclusion

Les sets sont des ensembles d’objets immuables qui sont préférables aux listes lorsqu’il s’agit d’effectuer un test d’appartenance. Il existe plusieurs méthodes associées aux sets. Les frozensets sont des ensembles devenus immuables et qui peuvent donc être utilisés comme clés de dictionnaire ou bien appartenir à un set.


Gravatar de Benoît Boudaud
Original post of Benoît Boudaud.Votez pour ce billet sur Planet Libre.

Articles similaires