Le mirroring des dépôts vers Github est maintenant natif dans Gitlab (et donc Framagit). Merci de passer à la fonction native pour que nous puissions couper notre solution maison. Détails sur https://docs.gitlab.com/ee/workflow/repository_mirroring.html#pushing-to-a-remote-repository (pensez à supprimer le webhook de notre solution maison).

Commit eb7a8298 by arpinux

update repo to lescahiersdudebutant

parent 6b32eb66
#!/bin/sh
#Auteur : thuban <thuban@yeuxdelibad.net>
#licence : GNU General Public Licence v3
# Description : regroupe des solutions pour se dépanner
# Dependances : zenity, info4forum, pastemyterm, handylinux-doc-(fr/en)
# pixup et imagemagick pour la capture d'écran (normalement déjà par défaut sur HL)
TITLE="Help Handylinux"
MAINTXT="A problem ? Don't worry, you're not alone ☺"
QUESTION="What do you want to do?"
INIT="Access the simplified computer initiation"
DOKU="Search a solution in the online documentation"
LOCALDOKU="Search a solution in the system's documentation"
FORUM="Ask on the forum"
TERMINAL="One told me to run a command, open a terminal"
INFO4FORUM="One asked for info4forum return, go there"
SHOT="Take a screenshot of my problem immediately"
SHOTMSG="The screenshot will be uploaded. Copy the adress to the forum"
INDEX="Read the glossary of informatic expressions"
FAQ="Look at the Frequently Asked Questions"
# trads
case $LANG in
fr*)
TITLE="Aide Handylinux"
MAINTXT="Un problème ? Pas de soucis, vous n'êtes pas seul(e)s ☺"
QUESTION="Que voulez-vous faire?."
INIT="Lire l'initiation simplifiée à l'informatique"
DOKU="Chercher une solution dans la documentation en ligne."
LOCALDOKU="Lire la documentation sur l'ordinateur."
FORUM="Demander de l'aide sur le forum."
TERMINAL="On m'a dit de taper une commande dans le terminal, j'y vais."
INFO4FORUM="On m'a demandé les informations de info4forum."
SHOT="Prendre une capture d'écran de mon problème tout de suite."
SHOTMSG="La capture d'écran va être chargée pour que vous puissiez copier son adresse sur le forum."
INDEX="Consulter le glossaire des termes informatiques."
FAQ="Accéder à la Foire Aux Questions."
;;
esac
# pour arpi
#cvlc "http://soundfox.me/audio/michael_jackson_-_you_are_not_alone_www.dinamik.az.mp3" > /dev/null 2>&1 &
#PID=$!
REP=$(zenity --title="$TITLE" --text="$MAINTXT" --window-icon="question" --width=500 --height=350\
--list --hide-header --print-column=1 --hide-column=1 \
--column "" --column "$QUESTION"\
"init" "$INIT"\
"doku" "$DOKU"\
"localdoku" "$LOCALDOKU" \
"forum" "$FORUM" \
"terminal" "$TERMINAL" \
"infoforforum" "$INFO4FORUM" \
"shot" "$SHOT" \
"index" "$INDEX" \
"faq" "$FAQ" \
)
#kill $PID
case $REP in
"init")
case $LANG in
fr*) x-www-browser "file:///usr/share/handylinux/guide.html" ;;
*) x-www-browser "file:///usr/share/handylinux/guide-en.html" ;;
esac
;;
"doku")
case $LANG in
fr*) x-www-browser "https://handylinux.org/wiki/doku.php/fr/start" ;;
*) x-www-browser "https://handylinux.org/wiki/doku.php/en/start" ;;
esac
;;
"localdoku")
exo-open --launch FileManager "$(xdg-user-dir DOCUMENTS)/Documentation"
;;
"forum")
x-www-browser "https://handylinux.org/forum/index.php"
;;
"terminal")
pastemyterm
;;
"infoforforum")
gksudo info4forum
;;
"index")
case $LANG in
fr*) x-www-browser "https://handylinux.org/wiki/doku.php/fr/glossaire_simple" ;;
*) x-www-browser "https://handylinux.org/wiki/doku.php/en/glossaire_simple" ;;
esac
;;
"faq")
case $LANG in
fr*) x-www-browser "https://handylinux.org/wiki/doku.php/fr/faq#apres_l_installation" ;;
*) x-www-browser "https://handylinux.org/wiki/doku.php/en/faq#after_installation" ;;
esac
;;
"shot")
notify-send -t 10000 -i "gnome-screenshot" "$SHOTMSG"
sleep 3
import -window root /tmp/ausecours.png
pixup /tmp/ausecours.png
rm /tmp/ausecours.png
;;
esac
exit 0
#!/usr/bin/env python
# -*- coding:Utf-8 -*-
"""
Auteurs : thuban (thuban@yeuxdelibad.net)
arpinux (arpinux@member.fsf.org)
licence : GNU General Public Licence v3
Description : Outil pour lister une description du matériel
permettant d'être plus facilement dépanné en
cas de soucis.
"""
import sys
import os
import pygtk
pygtk.require('2.0')
import gtk
class Info4forum():
def close_application(self, widget):
gtk.main_quit()
def copy(self, widget):
startiter, enditer = self.buf.get_bounds()
res = "[code]{}[/code]".format(self.buf.get_text(startiter, enditer))
clip = gtk.Clipboard()
clip.set_text(res)
def prep_text(self):
if os.path.isfile('/etc/handylinux_installation'):
with open('/etc/handylinux_installation', 'r') as hi:
handyinst = hi.read()
else:
handyinst = "ante HandyLinux-1.5.1"
if os.path.isfile('/etc/handylinux_version'):
with open('/etc/handylinux_version', 'r') as hv:
handyvs = hv.read()
else:
handyvs = "not an HandyLinux system"
host = os.popen("uname -n").read()
kernel = os.popen("uname -sr").read()
pci = os.popen("lspci").read()
usb = os.popen("lsusb").read()
hw = os.popen("dmidecode -q -t bios -t system -t processor -t memory").read()
fs = os.popen("df -h").read()
part = os.popen("fdisk -l").read()
with open('/etc/network/interfaces', 'r') as ni:
netinterfaces = ni.read()
with open('/etc/resolv.conf', 'r') as r:
resolvconf = r.read()
ifconfig = os.popen("ifconfig -a").read()
route = os.popen("route -n").read()
with open('/etc/apt/sources.list', 'r') as s:
sources = "/etc/apt/sources.list:\n{}".format(s.read())
for sourcefile in os.listdir('/etc/apt/sources.list.d'):
if sourcefile.endswith('.list'):
with open(os.path.join('/etc/apt/sources.list.d',sourcefile), 'r') as s:
sources += "/etc/apt/sources.list.d/{}\n{}".format(sourcefile,s.read())
t = """ Informations sur {}
Cette page vous permettra de transmettre des informations à propos de votre système pour obtenir de l'aide sur le forum HandyLinux : le texte sera pré-formaté, il vous suffit de "coller" sur le forum.
Vous pouvez l'éditer afin de supprimer les informations inutiles (ou ce paragraphe).
Installation : {}
Version : {}
Kernel : {}
lspci :
{}
lsusb :
{}
Info matériel :
{}
Système de fichier :
{}
Partitionnement : {}
Réseau :
network/interfaces :
{}
resolv.conf :
{}
ifconfig :
{}
route :
{}
Sources :
{}
""".format(host,\
handyinst,\
handyvs,\
kernel,\
pci,\
usb,\
hw,\
fs,\
part,\
netinterfaces,\
resolvconf,\
ifconfig,\
route,\
sources)
self.buf.set_text(t)
def __init__(self):
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.connect("delete_event", self.close_application)
self.window.set_title("Obtenir les spécificités de votre matériel")
self.window.set_border_width(5)
self.window.set_default_size(750, 500)
self.window.set_position(gtk.WIN_POS_CENTER)
box = gtk.VBox(False,5)
text = gtk.TextView(buffer=None)
text.set_editable(True)
text.set_wrap_mode(gtk.WRAP_WORD)
sw = gtk.ScrolledWindow()
sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
sw.add(text)
box.pack_start(sw, True, True, 0)
self.buf = text.get_buffer()
self.prep_text()
hbox = gtk.HBox(True, 5)
closebtn = gtk.Button(stock=gtk.STOCK_CLOSE)
closebtn.connect("clicked", self.close_application)
closebtn.set_flags(gtk.CAN_DEFAULT)
hbox.pack_start(closebtn, False, False, 0)
copybtn = gtk.Button(stock=gtk.STOCK_COPY)
copybtn.connect("clicked", self.copy)
copybtn.set_flags(gtk.CAN_DEFAULT)
hbox.pack_start(copybtn, False, False, 0)
box.pack_start(hbox,False,False,10)
self.window.add(box)
self.window.show_all()
def main():
if os.geteuid() != 0:
import subprocess
print("You need to have root privileges to run this script.\n")
status = subprocess.call('gksudo {0}'.format(os.path.realpath(__file__)), shell=True)
elif os.geteuid() == 0:
i = Info4forum()
gtk.main()
return 0
if __name__ == '__main__':
main()
# vim: tabstop=4 expandtab shiftwidth=4 softtabstop=4
#!/usr/bin/python
# -*- coding:Utf-8 -*-
"""
myHandyLinux :
description de la handylinux installée
HandyLinux <https://handylinux.org>
Auteurs :
thuban (thuban@yeuxdelibad.net)
coyotus (http://coyotus.com)
licence : GNU General Public Licence v3
Dépendances : python-gtk2, python-apt
"""
import os
import pygtk
pygtk.require('2.0')
import gtk
import apt_pkg
blue = '\033[34m'
handyicon = "/usr/share/pixmaps/handymenu_icon.png"
general = """ basée sur <a href='https://www.debian.org/' >Debian stable</a>
homepage : <a href='https://handylinux.org' >https://handylinux.org</a>
documentation : <a href='https://handylinux.org/wiki' >https://handylinux.org/wiki</a>
contact : <a href='contact@handylinux.org' >contact@handylinux.org</a>
"""
authors = """ guantas -- grand initiateur
<a href='http://yeuxdelibad.net'>thuban</a> &amp; Starsheep -- admin &amp; dev
fibi -- zebulon'man -- <a href='http://blog.handylinux.org' >blog</a> et tests
<a href='http://www.salem-saberhagen.cat/' >wiscot</a> -- admin de l'ombre
<a href='http://coyotus.com' >coyotus</a> -- dev@tout'heure
bruno-legrand -- <a href='http://emmabuntus.sourceforge.net/blog/' >EmmaSpy</a>
Tiberias81 -- design(é)<a href='https://handylinux.org/start' >graphisme</a>
Trefix -- modé(t)ra(c)teur
Rouzigalos -- wiki'œil de lynx'
<a href='http://www.dypelec.com/fr/informatique/' >dyp</a> -- MyticModo
<a href='http://arpinux.org' >arpinux</a> -- packager
+ Toute l'équipe Debian
"""
handytools = ["handymenu", "handy-menu", "handysoft", "handytri", "handylinuxlook", "redshift-config", "mpartage", "btshare-hweb", "loupy", "cyclope"]
class MyHandylinux():
def close_application(self, widget, event, data=None):
gtk.main_quit()
return False
def get_pkg_version(self,pkgname, cache):
try:
pkg = cache[pkgname]
if pkg.current_state == apt_pkg.CURSTATE_INSTALLED:
return(pkg.current_ver.ver_str)
else:
return("")
except KeyError:
return("")
def handytools_version(self):
apt_pkg.init()
cache = apt_pkg.Cache()
for tool in handytools:
version = self.get_pkg_version(tool, cache)
if version:
self.htools += "{} : {}\n ".format(tool,version)
def build_gui(self):
# interface graphique
mainbox = gtk.VBox(False, 2)
# titre
titlelbl = gtk.Label("HANDYLINUX © 2013-2016 <a href='http://www.gnu.org/licenses/gpl.txt' >GPLv3</a>".format(general))
titlelbl.set_use_markup(True)
# logo
logo = gtk.Image()
pixbuf = gtk.gdk.pixbuf_new_from_file(handyicon)
scaled_buf = pixbuf.scale_simple(64,64,gtk.gdk.INTERP_BILINEAR)
logo.set_from_pixbuf(scaled_buf)
# info HL
hltoolslbl = gtk.Label(general)
hltoolslbl.set_use_markup(True)
hltoolslbl.set_alignment(-0.9,0)
# info sur l'ordinateur
infolabel = gtk.Label("<span color=\"blue\">Mon HandyLinux</span>\n\
Install : {}\n\
Version : {}\n\
Outils : {}".format(self.handyinst,self.handyvs, self.htools))
infolabel.set_use_markup(True)
infolabel.set_alignment(-0.9,0)
# auteurs de HL
authorslbl = gtk.Label("<span color=\"blue\">L'équipe</span>\n{}".format(authors))
authorslbl.set_use_markup(True)
authorslbl.set_alignment(-0.9,0)
# bouton contributions
contribbtn = gtk.LinkButton(uri = "https://handylinux.org/wiki/doku.php/fr/contribution", label = "Participer")
# on met tout en place
mainbox.pack_start(titlelbl, True, True, 0)
mainbox.pack_start(logo, True, True, 0)
mainbox.pack_start(hltoolslbl, True, True, 0)
mainbox.pack_start(infolabel, True, True, 0)
mainbox.pack_start(authorslbl, True, True, 10)
mainbox.pack_start(contribbtn, True, True, 0)
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.connect("delete_event", self.close_application)
self.window.set_title("About Handylinux")
self.window.set_border_width(10)
self.window.set_icon_from_file(handyicon)
self.window.set_position(gtk.WIN_POS_CENTER)
self.window.add(mainbox)
self.window.show_all()
def __init__(self):
self.htools = ""
if os.path.isfile('/etc/handylinux_installation'):
with open('/etc/handylinux_installation', 'r') as hi:
self.handyinst = hi.read().strip()
else:
self.handyinst = " ante HandyLinux-1.5.1"
with open('/etc/handylinux_version', 'r') as hv:
self.handyvs = hv.read().strip()
self.handytools_version()
self.build_gui()
def main():
info = MyHandylinux()
gtk.main()
return 0
if __name__ == "__main__":
main()
# vim: tabstop=4 expandtab shiftwidth=4 softtabstop=4
DESTDIR =
BINDIR = /usr/bin
APPDIR = /usr/share/applications
ICONDIR = /usr/share/pixmaps
ETCDIR = /etc
HLDIR = /usr/share/handylinux
help:
@echo "Usage: as root"
@echo "make install : installs application"
@echo "make uninstall: uninstalls application"
install:
#mise en place des dossiers
install -d -m 755 -o root -g root $(DESTDIR)$(BINDIR)
install -d -m 755 -o root -g root $(DESTDIR)$(APPDIR)
install -d -m 755 -o root -g root $(DESTDIR)$(ICONDIR)
install -d -m 755 -o root -g root $(DESTDIR)$(ETCDIR)
install -d -m 755 -o root -g root $(DESTDIR)$(HLDIR)
#version handylinux
install -m 644 -o root -g root handylinux_version $(DESTDIR)$(ETCDIR)
#mise en place du guide
cp -a guide/* $(DESTDIR)$(HLDIR)
chown root:root $(DESTDIR)$(HLDIR)
#mise en place des icons
install -m 644 -o root -g root handylinux.png $(DESTDIR)$(ICONDIR)
install -m 644 -o root -g root handyhelp.png $(DESTDIR)$(ICONDIR)
install -m 644 -o root -g root handyinfo.png $(DESTDIR)$(ICONDIR)
#mise en place des scripts
install -m 755 -o root -g root myhandylinux $(DESTDIR)$(BINDIR)
install -m 755 -o root -g root info4forum $(DESTDIR)$(BINDIR)
install -m 755 -o root -g root ausecours $(DESTDIR)$(BINDIR)
install -m 755 -o root -g root pastemyterm $(DESTDIR)$(BINDIR)
install -m 755 -o root -g root networkcheck $(DESTDIR)$(BINDIR)
#mise en place des lanceurs
install -m 644 -o root -g root myhandylinux.desktop $(DESTDIR)$(APPDIR)
install -m 644 -o root -g root info4forum.desktop $(DESTDIR)$(APPDIR)
install -m 644 -o root -g root ausecours.desktop $(DESTDIR)$(APPDIR)
#mise en place de iceweasel2firefox au cas ou
install -m 755 -o root -g root iceweasel2firefox $(DESTDIR)$(HLDIR)
install -m 755 -o root -g root iceweasel2firefox-launcher $(DESTDIR)$(HLDIR)
install -m 644 -o root -g root iceweasel2firefox.desktop $(DESTDIR)$(HLDIR)
uninstall:
#suppression des icons
rm $(DESTDIR)$(ICONDIR)/handylinux.png
rm $(DESTDIR)$(ICONDIR)/handyhelp.png
rm $(DESTDIR)$(ICONDIR)/handyinfo.png
#suppression des scripts
rm $(DESTDIR)$(BINDIR)/myhandylinux
rm $(DESTDIR)$(BINDIR)/info4forum
rm $(DESTDIR)$(BINDIR)/ausecours
rm $(DESTDIR)$(BINDIR)/pastemyterm
rm $(DESTDIR)$(BINDIR)/networkcheck
#suppression des lanceurs
rm $(DESTDIR)$(APPDIR)/myhandylinux.desktop
rm $(DESTDIR)$(APPDIR)/info4forum.desktop
rm $(DESTDIR)$(APPDIR)/ausecours.desktop
#suppression du dossier HandyLinux
rm -Rf $(DESTDIR)$(HLDIR)
#!/usr/bin/env python
# -*- coding:Utf-8 -*-
"""
Auteurs : thuban (thuban@yeuxdelibad.net)
arpinux (arpinux@member.fsf.org)
licence : GNU General Public Licence v3
Description : Outil pour lister une description du matériel
permettant d'être plus facilement dépanné en
cas de soucis.
"""
import sys
import os
import pygtk
pygtk.require('2.0')
import gtk
class Info4forum():
def close_application(self, widget):
gtk.main_quit()
def copy(self, widget):
startiter, enditer = self.buf.get_bounds()
res = "[code]{}[/code]".format(self.buf.get_text(startiter, enditer))
clip = gtk.Clipboard()
clip.set_text(res)
def prep_text(self):
if os.path.isfile('/etc/handylinux_installation'):
with open('/etc/handylinux_installation', 'r') as hi:
handyinst = hi.read()
else:
handyinst = "ante HandyLinux-1.5.1"
if os.path.isfile('/etc/handylinux_version'):
with open('/etc/handylinux_version', 'r') as hv:
handyvs = hv.read()
else:
handyvs = "not an HandyLinux system"
host = os.popen("uname -n").read()
kernel = os.popen("uname -sr").read()
pci = os.popen("lspci").read()
usb = os.popen("lsusb").read()
hw = os.popen("dmidecode -q -t bios -t system -t processor -t memory").read()
reso = os.open("xrandr").read()
fs = os.popen("df -h").read()
part = os.popen("fdisk -l").read()
with open('/etc/network/interfaces', 'r') as ni:
netinterfaces = ni.read()
with open('/etc/resolv.conf', 'r') as r:
resolvconf = r.read()
ifconfig = os.popen("ifconfig -a").read()
route = os.popen("route -n").read()
with open('/etc/apt/sources.list', 'r') as s:
sources = "/etc/apt/sources.list:\n{}".format(s.read())
for sourcefile in os.listdir('/etc/apt/sources.list.d'):
if sourcefile.endswith('.list'):
with open(os.path.join('/etc/apt/sources.list.d',sourcefile), 'r') as s:
sources += "/etc/apt/sources.list.d/{}\n{}".format(sourcefile,s.read())
t = """ Informations sur {}
Cette page vous permettra de transmettre des informations à propos de votre système pour obtenir de l'aide sur le forum HandyLinux : le texte sera pré-formaté, il vous suffit de "coller" sur le forum.
Vous pouvez l'éditer afin de supprimer les informations inutiles (ou ce paragraphe).
Installation : {}
Version : {}
Kernel : {}
lspci :
{}
lsusb :
{}
Info matériel :
{}
Écran et affichage :
{}
Système de fichier :
{}
Partitionnement : {}
Réseau :
network/interfaces :
{}
resolv.conf :
{}
ifconfig :
{}
route :
{}
Sources :
{}
""".format(host,\
handyinst,\
handyvs,\
kernel,\
pci,\
usb,\
hw,\
reso,\
fs,\
part,\
netinterfaces,\
resolvconf,\
ifconfig,\
route,\
sources)
self.buf.set_text(t)
def __init__(self):