PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Jeoffrey Bauvin : Systemd : exécuter une commande au boot

dimanche 23 décembre 2012 à 19:40

Ayant récemment passé à Systemd, je n'en suis pas pour autant plus convaincu... Systemd semble plus complexe à gérer, mais passons. Je cherchais à le moyen de lancer un script au démarrage. Croyez-moi, c'est un peu plus compliqué avec Systemd qu'avec l'ancien système init !

Nous allons utiliser les scripts "rc", gràce au paquet "initscripts-systemd" :

yaourt initscripts-systemd

Une fois le paquet installé, utilisez le fichier /etc/rc.local et placez-y les commandes à exécuter au boot :).

De même, utilisez /etc/rc.local.shutdown pour exécuter des commandes pendant la séquence d'arrêt ;).

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

Full Circle Magazine FR : Pour les Fêtes de fin d'année

dimanche 23 décembre 2012 à 14:26

Bonjour à toutes et à tous!

L'équipe du magazine Full Circle en français est très heureuse de pouvoir vous offrir le numéro 65 (celui de septembre 2012) en français pour vos loisirs pendant la « Trêve des confiseurs ». Comme toujours, il est disponible sur notre page Lire ou télécharger les numéros ou directement en cliquant sur l'image ci-dessous.

Issue65fr.png

Ce mois-ci, outre les bonnes rubriques habituelles (Courriers, Q&R, Demandez au petit nouveau, Fermeture des fenêtres, Labo Linux, etc.), vous trouverez :

Vous pourriez, par exemple, venir nous aider au FCM-fr. À titre d'exemple, seulement quatre personnes ont travaillé sur les traductions et seulement quatre personnes (dont trois des traducteurs) ont fait les premières relectures. Le PDF a été relu par ces mêmes personnes encore, plus un autre relecteur qui se sont plus à l'aise sur les PDF. Soixante pages ? Quatre ou cinq personnes ? Je vous laisse faire les calculs...

Nous avons vraiment besoin de personnes qui voudraient travailler régulièrement avec l'équipe, ne serait-ce que pour faire la relecture d'un ou de deux articles par jour. Tiens : une bonne résolution à faire pour le Nouvel an ? Nous sommes prêts à vous accueillir les bras ouverts.

En attendant, nous vous souhaitons d'excellentes fêtes de fin d'année !

Bonne lecture !

Toute l'équipe du FCM-fr dont Bab, scribeur et relecteur,FCM-Ekel, frangi, fredphil91, lemontchauve, et moi-même, Auntie E, traducteurs et/ou relecteurs.

Gravatar de Full Circle Magazine FR
Original post of Full Circle Magazine FR.Votez pour ce billet sur Planet Libre.

Articles similaires

Denis Szalkowski : Le choix du CMS Open Source SilverStripe pour le nouveau site Elysee.fr

dimanche 23 décembre 2012 à 09:03
Par     23 décembre 2012  - Catégorie(s): Logiciel libre  Logiciel libre

Si les communicants de l’Elysée ont parlé d’une refonte, force est de constater qu’il s’agit plutôt d’une réécriture complète du site de l’Elysée,  qui a dû couter bien plus que les 50 000 euros annoncés dans la presse. Dans un commentaire vu ici, une certaine « ponette » précise que les 50 000 euros n’intègrent pas les heures fournies par la cellule Internet de l’Elysée ! Au final, le site fort des 4 000 heures de travail fournies par les développeurs de l’Elysée aurait coûté, au minimum, 190 000 euros, en valorisant l’heure de travail à 35 euros sur la base des données d’Eurostat ! C’est un minimum sachant que le travail aurait été réalisé par des salariés de l’Elysée !

Le CMS SilverStripe choisi par la cellule Internet de l’Elysée

Si Romain Pigenel nous a « vendu » le site de l’Elysée comme étant Made in France, il a oublié de nous préciser avec quel CMS il avait été réalisé. Or, le nouveau site de l’Elysée a été refait avec le CMS Open Source SilverStripe (made in Australia/New Zealand ;+)). Vous pouvez le vérifier par vous-mêmes du fait de la présence de liens du type assets/_resampled sur le site. C’est ce même CMS qui avait été utilisé par Frédéric Giudicelli – aujourd’hui responsable technique de la cellule Internet de l’Elysée - pour le site du candidat Hollande ! Il est surprenant que les Webmasters aient oublié la référence au logiciel dans les mentions légales et éditoriales.

Si le choix du CMS est extrêmement curieux (là où on aurait pu s’attendre à Drupal), saluons le fait qu’il se soit porté sur une solution Open Source ! Sous la présidence de Nicolas Sarkozy, c’était la solution propriétaire fournie par Nexint qui avait finalement été retenue.

Le choix du CMS SilverStripe pour le site Elysee.fr

Dsfc Dsfc

Le choix du CMS Open Source SilverStripe pour le nouveau site Elysee.fr

7 votes, 5.00 avg. rating (98% score)

Autres articles sur le sujet :

  1. PhpMailFilter : script PHP antispam Open Source
  2. L’arrêt de Thunderbird par Mozilla enfoncerait la crédibilité de l’Open Source !
  3. Alternatives Open Source aux logiciels propriétaires sous Windows
  4. Refonte du site du ministère de la Culture et de la Communication pour 529 000 euros !
  5. Lecteurs Pdf Open Source pour Windows
  6. L’offre des Erp (Pgi) et Crm Open Source
  7. Ohloh : base de données de tous les projets Open Source et GPL
  8. Xorp, l’open source du routage
  9. Open source : la Gendarmerie nationale donne le la !
  10. Open source dans les collectivités locales

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

François : Script python pour retailler des images et plus si affinité

samedi 22 décembre 2012 à 22:05

Prenons ce cas d’école où on est en possession d’une large quantité de photographies que l’on doit traiter. Dans mon cas, ces photos sont prises avec un Nikon D300 dans un format tif. Je prends une image par minutes sur 7 à 48 heures. Le script présenté ici ne fait qu’un découpage des photos sur une zone d’intérêt et les enregistre sous un format png. D’autres actions peuvent être ensuite enchainées, selon les besoins. Le code est donné en fin d’article, son contenu me semblait suffisamment intéressant pour en faire une billet.

Le « crop » se fait avec la bibliothèque PIL. Puisqu’elle n’est disponible qu’en python2, on écrira le script dans cette version. Cette partie est réalisée par la fonction crop_pic()

L’étape suivante est de récupérer la liste des images à traiter et le répertoire de destination. J’utilise la bibliothèque argparse même si quelque chose de plus léger comme cliz pouvait suffire. Ainsi, je spécifie un répertoire source et un répertoire de destination.

Dans le répertoire source, je récupère à l’aide de glob la liste des fichiers. On pourrait être plus restrictifs en imposant une extension tif. Le nommage est plus ou moins complexe, mais il comporte au moins un numéro. La liste des fichiers est donc triée avec sorted (Vous allez comprendre dans un instant pourquoi). Il faut faire attention, car si les fichiers sources comportent des numéros comme 1, 2, … 11, 12, …, un tri sur cette liste mettra 11 avant 2. On spécifie donc une clé pour avoir un tri naturel. J’ai dû récupérer ce bout de code un jour sur stack overflow.

Une fois ceci fait, il faut générer de nouveaux noms, le nombre se référant au temps. J’ai choisi d’écrire un générateur dont je peux spécifier la première valeur. Mes numéros sont sous la forme 00001 pour avoir un tri naturel avec un ls par ex. :) On pourrait spécifier un pas dans le cas où la période d’acquisition aurait été différente de 1 minute pour avoir ainsi un indicateur temporelle correct dans le nom.

On passe enfin à l’action en lançant les crop sur chaque image. Le processus étant un peu lent avec une alternance de charge processeur et d’IO, il est plus efficace de traiter des images en parallèle. Pour cela, j’ai choisi d’utiliser une pool de tâches. On la remplit, et une fois vidé, on admire nos belles images traitées.

#!/usr/bin/env python2
# -*- coding: utf-8 -*-


from PIL import Image

import glob
import os
from multiprocessing import Pool

import re
import argparse


def get_name(path, start=1):
    """
    Generator for pictures
    :param path: dir path for the picture  
    :param start: first number
    :returns: filename
    """
    i = start
    while True:
        pngfile = os.path.join(path, str(i).zfill(5) + '.png')
        yield(pngfile)
        i += 1

def crop_pic(filename, output, box):
    """
    :param filename: name of the picture   
    :param output: destination file
    :param box: crop box (tuple)  (x_1,y_1,x_2,y_2)
    """
    print(" Processing... %s \\n\\t to... %s" % (filename, output))
    basename, ext = os.path.splitext(filename)
    name, ext = os.path.splitext(filename) 
    im = Image.open(filename)
    region = im.crop(box)
    region.save(output)


def tryint(s):
    try:
        return int(s)
    except:
        return s

def alphanum_key(s):
    """
    Turn a string into a list of string and number chunks.
    >>> alphanum_key("z23a")
    ['z', 23, 'a']
    """
    return [ tryint(c) for c in re.split('([0-9]+)', s) ]


if __name__ == '__main__':

    box = (1130,220,3600,2450)
    start = 1

    #Arg parsing
    parser = argparse.ArgumentParser(description='Crop!', epilog='')
    parser.add_argument('-s', help='Source dir', metavar='SOURCE', required=True)
    parser.add_argument('-d', help='Dest dir', metavar='DEST', required=True)
    args = parser.parse_args()

    #Dirs
    cwd = os.getcwd()
    source_dir = os.path.join(cwd, args.s)
    dest_dir = os.path.join(cwd, args.d)
    os.makedirs(dest_dir)

    #List of pictures
    pic_list = glob.glob(source_dir + '/*')
    pic_list = sorted(pic_list, key=alphanum_key)

    #Create a pool
    pool = Pool(processes=4)
    generator = get_name(dest_dir, start)
    for im in pic_list:
        output = generator.next()
        pool.apply_async(crop_pic, args = (im, output, box, ))

    pool.close()
    pool.join()

 

Gravatar de François
Original post of François.Votez pour ce billet sur Planet Libre.

Taltan : Ubuntu Tweak 0.8.3 on the rock

samedi 22 décembre 2012 à 16:20

ubuntu-tweak.pngUbuntu Tweak vient d'être mis à jour, il passe en version 0.8.3. Pour mémo, Ubuntu Tweak est un utilitaire pour Ubuntu qui permet d'effectuer moult réglages systèmes, de l'interface Unity au gestionnaire de fichier en passant par le bureau ou le gestionnaire d'écran de connexion, et tout cela de manière très intuitive. Pour cette nouvelle version, pas de grande nouveauté, il s'agit d'une version de « maintenance », qui corrige quelques bugs (notamment l'énervant « ubuntu-tweak crashed with SIGSEV in PyGILState_Ensure() » ) et apporte des petites nouveautés, comme la révélation d'une feature cachée d'Ubuntu 12.10 le « Touch Mode for Overlay Scrollbar » => comportement de la barre de défilement à survol, ce qui donne dans le menu Ajustement / Divers :

utweak01.png

utweak02.png

utweak03.png

plus de détails sur la mise à jour ici...

Pour l'installtaion vous pouvez télécharger le .deb qui va bien, ou alors c'est dans le dépôt PPA Ubuntu Tweak Stable que cela ce passe :

sudo add-apt-repository ppa:tualatrix/ppa
sudo apt-get update
sudo apt-get install ubuntu-tweak

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

Articles similaires