25.1.19

Audio + Vidéo sous Linux

sudo apt-get install vlc smplayer banshee mpv kodi mplayer
https://popcorntime.sh/fr

16.1.19

bluray sous linux

sudo apt-get install libdvd-pkg
sudo apt-get install vlc libaacs0 libbluray-bdj libbluray2
mkdir -p ~/.config/aacs/
cd ~/.config/aacs/ && wget http://vlc-bluray.whoknowsmy.name/files/KEYDB.cfg

15.1.19

Git + eclipse

dans eclipse installer egit
http://download.eclipse.org/egit/updates
tout cocher

dans Windows>Preferences>Team>Git changer le "Default repository folder"

ouvrir la perspective git

Clone a Git repository

URI : https://github.com/delphives/clockFX.git
renseigner User et Password et cocher "Store in Secure Store"

une fois que le projet apparaît dans la perspective git il faut faire un import depuis la perspective java et on peut travailler dessus

7.1.19

changer le modèle .tt pour l'entity framework

le modèle complet peut être télécharger ici :


pour supprimer la création du constructeur sans paramètre, éliminer les lignes :

public <#=code.Escape(entity)#>()...

pour insérer le FirePropertyChanged, rechercher la ligne :

public string Property(EdmProperty edmProperty)

et remplacer toute la méthode par :

public string Property(EdmProperty edmProperty)
    {
    var propertyName = _code.Escape(edmProperty);
    var finalValue = "value"; // not modified by default

return string.Format(
CultureInfo.InvariantCulture,
"private {1} {6};" + 
Environment.NewLine + "\t{0} {1} {2}" + 
Environment.NewLine + "\t{{" + 
Environment.NewLine + "\t\t{3}get" +
Environment.NewLine + "\t\t{{" +
Environment.NewLine + "\t\t\treturn {6};" +
Environment.NewLine + "\t\t}}" +
Environment.NewLine + "\t\t{4}set" +
Environment.NewLine + "\t\t{{" +
Environment.NewLine + "\t\t\t{6} = {7};" +
Environment.NewLine + "\t\t\tFirePropertyChanged();" +
Environment.NewLine + "\t\t}}" +
Environment.NewLine + "\t}}" + Environment.NewLine,
Accessibility.ForProperty(edmProperty),
_typeMapper.GetTypeName(edmProperty.TypeUsage),
propertyName,
_code.SpaceAfter(Accessibility.ForGetter(edmProperty)),
_code.SpaceAfter(Accessibility.ForSetter(edmProperty)),
"\"" + _code.Escape(edmProperty) + "\"",
"_" + FirstLetterToLower(_code.Escape(edmProperty)),
finalValue);
    }

puis :

public string NavigationProperty(NavigationProperty navProp)

et remplacer toute la méthode par :

public string NavigationProperty(NavigationProperty navigationProperty)
    {
        var endType = _typeMapper.GetTypeName(navigationProperty.ToEndMember.GetEntityType());
var one = "";
var six = "";
if (navigationProperty.ToEndMember.RelationshipMultiplicity == RelationshipMultiplicity.Many)
{
one = "ObservableCollection<" + endType + ">";
six = "";
else
{
one = endType;
if (one == _code.Escape(navigationProperty))
{
six = Environment.NewLine + "\t\t\t" + _code.Escape(navigationProperty) + "Id = ((" + _code.Escape(navigationProperty) + ")value).Id;";
}
else
{
six = "";
}
}

        return string.Format(
            CultureInfo.InvariantCulture,
            "{0} {1} {5};" + 
Environment.NewLine + "\tpublic virtual {1} {2} {{{3} " + 
Environment.NewLine + "\t\tget" + 
Environment.NewLine + "\t\t{{" + 

Environment.NewLine + "\t\t\treturn {5};" + 
Environment.NewLine + "\t\t}} {4}" + 
Environment.NewLine + "\t\tset" + 
Environment.NewLine + "\t\t{{" + 
Environment.NewLine + "\t\t\t{5} = value;" +
"{6}" +
Environment.NewLine + "\t\t\tFirePropertyChanged();" +
Environment.NewLine + "\t\t}}" + 
Environment.NewLine + "\t}}",
            "private",
            one,
            _code.Escape(navigationProperty),
            _code.SpaceAfter(Accessibility.ForGetter(navigationProperty)),
            _code.SpaceAfter(Accessibility.ForSetter(navigationProperty)),
"_" + FirstLetterToLower(_code.Escape(navigationProperty)),
""
);
    }

rechercher la ligne :

<#=codeStringGenerator.EntityClassOpening(entity)#>

puis la modifier en :

<#=codeStringGenerator.EntityClassOpening(entity)#> : INotifyPropertyChanged

rechercher la ligne :

this.<#=code.Escape(navigationProperty)#> = new HashSet

puis changer HashSet en ObservableCollection

rechercher la ligne :

<#=codeStringGenerator.EntityClassOpening(entity)#> : INotifyPropertyChanged
{

et dans l'implémentation de la méthode (au début) ajouter :

    public event PropertyChangedEventHandler PropertyChanged;

    private void FirePropertyChanged([CallerMemberName] string propertyName = null)
    {
        if (PropertyChanged != null)
        {
            PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
        }
    }

rechercher la ligne :

public string UsingDirectives(bool inHeader, bool includeCollections = true)

et à la ligne "{2}", changer en :

"{2}" +
"using System.Collections.ObjectModel;" + Environment.NewLine +
"using System.ComponentModel;" + Environment.NewLine +
 "using System.Runtime.CompilerServices;",

puis ajouter la méthode suivante :

public static string FirstLetterToLower(string text)
{
return Char.ToLowerInvariant(text[0]) + text.Substring(1);
}

6.1.19

mot de passe "guest" pour NAS synology

dans les paramètres avancés de l'utilisateur guest, décocher "apply password strength rules"

5.1.19

backup rsync

#! /bin/sh
rsync -Paruv --delete --ignore-errors --exclude='.local/share/Steam' --exclude='.docker' --exclude='OneDrive' /home/delphives/ /media/delphives/BACKUP/delphives

echo "rsync -Pruv --delete --ignore-errors --exclude={.local,.cache} /home/delphives /media/delphives/WDElements/"
echo "rsync -Pruv --delete --ignore-errors /home/delphives/pCloudDrive/ /media/delphives/DATA/BACKUP_PCLOUD"
echo "rsync -Pruv --delete --ignore-errors /home/delphives --exclude={pCloudDrive} /media/delphives/WDElements/"
echo "rsync -Pruv --delete --ignore-errors /media/delphives/DATA /media/delphives/WDElements/"
echo "rsync -Pruv --delete --ignore-errors /home/delphives --exclude={/home/delphives/.local/share/Steam} /media/delphives/WDElements/"
echo "rsync -Pruv --delete --ignore-errors /home/delphives/.local/share/Steam/steamapps/common/Left 4 Dead 2/left4dead2/addons /media/delphives/WDElements/left4dead2"
echo "**************************************************************"
echo "Sauvegarde terminée!!!"
echo "**************************************************************"
read touche


3.1.19

jar to exe

télécharger l'application Launch4j
la lancer avec "java -jar launch4j.jar"
dans l'onglet "Basic", renseigner le champ "Output file", "Jar"
dans l'onglet "JRE", renseigner le champ "Bundled JRE path:" --> C:\chemin_vers_le_dossier_java_racine, "Min JRE version:" --> 1.8

en sauvegardant les préférences dans un fichier xml on peut lancer la commande suivante :
java -jar launch4j.jar preferences.xml

27.12.18

vpn autoconnect ubuntu

pour se connecter automatiquement à un vpn, créer une connexion vpn. dire à la connexion internet de se connecter automatiquement au vpn.
créer un script (p.ex un fichier dans home qui se nomme AutoConnectVPN) :
!!!ATTENTION ne pas mettre d'espace avant #!/bin/bash!!!

    #!/bin/bash 
    if [[ $(nmcli con show --active | grep "MyConnection") == "" ]]; then
        nmcli con up MyConnection
    fi

faire un : chmod +x /home/delphives/AutoConnectVPN
mettre ce script dans les applications de démarrage (commande --> /home/delphives/AutoConnectVPN)
MyConnection --> le nom de la connexion filaire ou autre

7.12.18

jnlp

pour faire tourner une page .jnlp il faut installer l'extension icedtea. pour cela aller à l'adresse suivante : http://icedtea.wildebeest.org/download/icedtea-web-binaries/
il faut dézipper le .zip et lorsque l'on ouvre une page .jnlp associer à "javaws.bat"

6.12.18

jar signed

1 projet FX, 1 projet JPA
export --> runnable jar file
extract required libraries int generated jar --> attention avec "package..." ça marche pas!!!
générer le jar sur le bureau
puis dans un terminal sur le bureau :
keytool -genkey -keystore myKeystore -alias delphives
[mot de passe] ubuntu
...
signer le jar avec :
jarsigner -keystore myKeystore factureFX.jar delphives

30.11.18

javaFX

télécharger eclipse-installer, installer la version java EE
dans eclipse : install new software,
        Name: e(fx)clipse
        Location: http://download.eclipse.org/efxclipse/updates-released/3.0.0/site
installer javafx scene builder et le paramétrer dans eclipse : window - preference - javafx
installer playonlinux et heidisql

OpenJDK


Sur le site https://jdk.java.net, le openjdk 8 est toujours en « early access » et non pas en « General-Avaibility ». du coup on peut le télécharger à l’adresse suivante : https://github.com/scoop-software/openjfx-win/releases (avec javafx) ou https://adoptopenjdk.net (sans javafx)
Il faut ensuite dézipper l’archive dans c:\adi et modifier les variables d’environnements system « path » et « JAVA_HOME ». (dans « path » mettre le chemin du répertoire « bin » et dans « JAVA_HOME » mettre le chemin du répertoire java)
Association des fichiers .jar
Pour associer les fichiers jar à l’openJDK (double-click), il faut ajouter à la registry :






ou télécharger l'utilitaire https://ystr.github.io/types/