Automatiseren met actionaz: gnome-omgeving optimaliseren

Actionaz (https://wiki.actiona.tools/doku.php?id=en:start)is een prachtige tool om automatiseringsopdrachten in linux (en windows) te volbrengen: meerdere muisklikken in een programma, honderden formulieren invullen met slechts enkele waarden die moeten worden aangepast, openen en intypen in programma's, enz. Maar het kan nog veel meer: terminal openen en commando's uitvoeren, inlezen uit tekstbestanden, enz.
Over hoe je actionaz-scripts aanmaakt, zal ik het hier niet hebben... Daarvoor bestaat er al wat materiaal op het internet: https://wiki.actiona.tools/doku.php?id=en:actions#data


Probleemstelling en eerste link naar een antwoord

Deze post probeert een antwoord te geven op de opmerking van Bram:
Ik heb ook nog niet gevonden of het mogelijk is om scripts in een map direct te laten uitvoeren. Als ik er op dubbelklik worden ze alleen nog maar geopend in het programma.
 
Bram heeft gelijk: een linuxomgeving is ingesteld om actionazscripts die je hebt opgeslagen op je harde schijf te openen met de actionaz-editor. Gelukkig kwam ik deze fosdemvideo tegen van de ontwikkelaar van actionaz: 


Hierin legt hij het concept van actionaz uit. Wat verderop vermeldt hij een heel belangrijk detail: er is een grafische editor maar ook een niet-grafische executer van de scripts genaamd actexec.  ... en dit kan nu net een oplossing bieden voor het probleem van Bram: uitvoeren van actionaz-scripts zonder de editor te openen en om met bestandsbeheer gewoon op de scripts te klikken en deze te laten uitvoeren. 

actexec test.ascr
Een eerste test om een script uit te voeren via terminalcommando was direct succesvol. 

Eerste (mislukte) poging om tot een oplossing te komen

Zoals Bram opmerkt: klik je op een script vanuit je bestandsbeheerder dan opent de editor maar wordt het script niet automatisch uitgevoerd. Eerste poging: via rechtermuisklik open je 'Eigenschappen' en dan vervolgens het tabblad 'Openen met'.  Als je net als ik met GNOME 3.14 werkt dan verschijnt er nergens het programma actexec. Erger zelf: er is geen mogelijkheid om een aangepaste regel aan toe te voegen...

Tweede keer goede keer (of zoiets)

We hebben een oplossing: actexec maar deze kan je niet als standaard instellen in GNOME 3.14. Dan maar zelf de handen uit de mouwen steken om een eigen mime-desktop-verwijzing aan te maken en deze vervolgens in te voeren in GNOME.

Deel 1 : Aanmaken van een mime.desktop-bestand op het systeem

1) Open een terminal en word root met het commando su. 

2) Vervolgens maak je een systeemwijd desktop-bestand aan (door een bestaand te kopieren)
 cp /usr/share/applications/actionaz.desktop /usr/share/applications/actexec.desktop
3) Open met gedit. 
gedit /usr/share/applications/actexec.desktop

Wis alles in dit bestand en plaats volgende tekst erin:
[Desktop Entry]
Name=Actexec
GenericName=Automation Tool
GenericName[fr]=Outil d'automatisation
Comment=Automate tasks
Comment[fr]=Automatise des tâches
Exec=actexec %f
Terminal=false
Icon=actionaz
Type=Application
Categories=Utility;
Version=1.0
MimeType=application/actionaz-script;application/actionaz-code;


4) Sla op en sluit terminal.

Deel 2 : Bestandsbeheerder automatisch actexec laten uitvoeren als gewone gebruiker 

5) Nu deze verwijzing invoegen in je lokale omgeving. Open met een teksteditor in de verborgen map .config van je /home/gebruiker het bestand mimeapps.list
... en verwijder er elke verwijzing in naar actionaz (indien je dit reeds had gedaan) 
en voeg volgende regel toe in zowel de sectie [Default Applications] en de sectie [Added Associations]:
application/actionaz-script=actexec.desktop



Efkes uitloggen en terug inloggen. Nu zou het moeten lukken om met je bestandsbeheerder gewoon op een actionaz-script te klikken zodat deze word uitgevoerd.  Als je ze wil openen met de editor kun je nog altijd met rechtermuisklik / Open met / Actionaz te selecteren.

Nu is het een kwestie van organiseren: mappen aanmaken en de scripts een betekenisvolle naam geven.