Vue lecture

Armcord devient Legcord (client alternatif Discord)

Logiquement, ARM est monté aux créneaux au sujet du nom de ce client alternatif. Il a par conséquent changé de dénomination en octobre dernier.

On peut tout à fait recharger un backup (.json) d’Armcord pour Legcord puisque derrière c’est toujours Vencord.

Et là, c’est le drame. Si vous n’y connaissez rien, je vous ai perdus ^^’ Je vais détailler un peu.

Tout le monde connaît Discord. Le super chat ultra complet, feature killer de TeamSpeak et Mumble pour les gamers à l’époque. Outil qui enregistre par ailleurs 100% de ce qui passe sur ses serveurs, aux USA, et au moins temps que notre compte n’est pas supprimé. Le tout sous le coup du Cloud Act notamment. Donc « ils » savent tout. Et se caillent bien de nos conversations ingame tout comme de nos logs de copies de vidéos… Mais « ils » les ont.

Pour se passer de Discord j’ai testé quelques années RocketChat, quasi aussi complet ; il existe également SpaceBar (ex Fosscord), tous deux fonctionnant à la manière de Discord : un serveur à auto-héberger couplé à un client. Si c’est sympa et qu’on peut souvent trouver des ponts entre IRC, Discord et d’autres clients de discussion (je vous recommande chaudement Matterbridge), le plus simple reste souvent d’utiliser Discord. En toute connaissance de cause évidemment 🙂

Discord est très complet mais y ajouter quelques features est toujours sympa ! Pour ça il existe des clients alternatifs et des mods qui vont modifier notre interaction aux serveurs Discord : BetterDiscord, Vencord, Legcord, Shelter etc.

Le choix de tel ou tel client reste à mon avis très subjectif… hormis pour le suivi du développement. Je fais tourner Legcord (Linux/Windows) et Enmity sur iOS.
Legcord est à voir comme un client Web (application « en dur ») pour Discord. Ce qui permet de modifier le thème à foison tout comme de profiter de mods tels que Vencord et Shelter ou encore de gérer le multi-instances (plusieurs comptes).

Voici un exemple de plugins accessibles via Vencord

Et pour les thèmes, le plus simple est de parcourir ceux de BetterDiscord. On peut soit les utiliser tels quels ou les modifier.
Par exemple j’utilise le thème Chillax avec la liste des serveurs (en bas de l’écran) de Steam. Et j’ai modifié le wallpaper –wallpaper: url(« https://xxxx.jpg »);

Voici mon thème modifié

/**
 * @name Chillax
 * @author Chillax Squad
 * @authorLink https://github.com/warrayquipsome/Chillax#Authors
 * @version 1.5.3
 * @invite DrfX6286kF
 * @description The theme where calm meets customization.
 * @source https://github.com/warrayquipsome/Chillax
*/

/*
     ⸙  ────     ────     ───── ❝ 𝐚𝐥𝐥 𝐫𝐢𝐠𝐡𝐭 𝐡𝐞𝐫𝐞 ❞ ─────    ────     ────  ⸙
  ╭─ ━━━━━━━━━ ━━━━━━━ ━━━━━━━━━ -ˋˏ ༻🂡༺ ˎˊ- ━━━━━━━━━ ━━━━━━━ ━━━━━━━━━ ─╮
          █████╗   ██╗  ██╗  ██╗  ██╗      ██╗       █████╗   ██╗  ██╗
         ██╔══██╗  ██║  ██║  ██║  ██║      ██║      ██╔══██╗  ╚██╗██╔╝
  ||     ██║  ╚═╝  ███████║  ██║  ██║      ██║      ███████║   ╚███╔╝      ||
         ██║  ██╗  ██╔══██║  ██║  ██║      ██║      ██╔══██║   ██╔██╗
         ╚█████╔╝  ██║  ██║  ██║  ███████╗ ███████╗ ██║  ██║  ██╔╝╚██╗
          ╚════╝   ╚═╝  ╚═╝  ╚═╝  ╚══════╝ ╚══════╝ ╚═╝  ╚═╝  ╚═╝  ╚═╝
  ╰─ ━━━━━━━━━ ━━━━━━━ ━━━━━━━━━ -ˋˏ ༻-༺ ˎˊ- ━━━━━━━━━ ━━━━━━━ ━━━━━━━━━ ─╯
*/

/* CHILLAX theme entry point */
@import url("https://warrayquipsome.github.io/Chillax/chillax.css");

/* removable addons */
@import url("https://mwittrien.github.io/BetterDiscordAddons/Themes/EmojiReplace/base/Microsoft.css");
@import url("https://mwittrien.github.io/BetterDiscordAddons/Themes/_res/SettingsIcons.css");
@import url("https://nyri4.github.io/Discolored/main.css");
@import url("https://warrayquipsome.github.io/Chillax/Addons/IconPackEdited.css");
@import url("https://warrayquipsome.github.io/Chillax/Addons/AvatarOnlyMemberList.css");
@import url("https://warrayquipsome.github.io/Chillax/Addons/FolderRedesign.css");
@import url("https://discordstyles.github.io/RadialStatus/dist/RadialStatus.css");
@import url("https://warrayquipsome.github.io/Chillax/Addons/FriendGrid.css");

/*additional addons*/ /*(remove the both * to use)*/
/*@import url("https://warrayquipsome.github.io/Chillax/Addons/SimpleLessLag.css");*/

@import url(https://discordstyles.github.io/HorizontalServerList/dist/HorizontalServerList.css);
@import url(https://discordstyles.github.io/Addons/bottomhsl.css);

[class^="folderIconWrapper"] {
    transform: rotate(-90deg);
}

[class^="closedFolderIconWrapper"] [class^="icon"],
[class^="expandedFolderIconWrapper"] svg {
    transform: rotate(90deg);
}

/*Chillax Roots*/
:root {
    /*background image*/ /*(replace the link to use)*/
    --background-image: var(--wallpaper);
    --bg-opacity: 100%;
    /*bg dev suggestions*/
    --wallpaper: url("https://wallpaperaccess.com/full/872876.jpg");
    /*modern background selection*/
    --modern-dark-bg: url("https://warrayquipsome.github.io/Chillax/Wallpapers/modern-dark-bg.png");
    --modern-light-bg: url("https://warrayquipsome.github.io/Chillax/Wallpapers/modern-light-bg.png");
}


/*window*/ /*dark mode*/
:root.theme-dark {
    --window-margin: 20px; /*must be above 20px*/
    --window-colour: #0009;
    --window-blur: 5px;
    --window-border-radius: 10px;
    --sidebar-colour: rgb(36, 36, 36);
}

/*window*/ /*light mode*/
:root.theme-light {
    --window-margin: 20px; /*must be above 20px*/
    --window-colour: rgba(255, 255, 255, 0.6);
    --window-blur: 5px;
    --window-border-radius: 10px;
    --sidebar-colour: rgb(209, 209, 209);
}


/*roots*/ /*both dark and light*/
:root {
    --user-name: "King";
    --edited-message: " EDITED ✎ ";
    --font-name: Poppins;
    --font-size: 13px;
    --group-chat-font: "Monoton"; /* change this to change the group chat's default font */


    /*glow radial status*/ /*must end in px*/
    --rs-small-spacing: 0px;
    --rs-large-spacing: 0px;
    --rs-medium-spacing: 0px;
    --rs-small-width: 2.5px;
    --rs-medium-width: 3.5px;
    --rs-large-width: 4.5px;
    --rs-avatar-shape: 50%;
    --rs-online-color: #1df594;
    --rs-idle-color: #faa61a;
    --rs-dnd-color: #f04747;
    --rs-offline-color: #636b75;
    --rs-streaming-color: #643da7;
    --rs-invisible-color: #636b75;
    --rs-phone-visible: block; /* change it to `none` to disable mobile icon */
    --rs-phone-color: var(--rs-online-color);

    /* For accent color to take full effect must need to change both */
    /* chillax colours rgb */
    --accentcolor: 251, 84, 84;
    /* chillax colours hex */
    --accentcolorV2: #fb5454;


    /* settings modal root */
    --themelightsettingsmodalbackground: rgb(223, 223, 223);
    --themedarksettingsmodalbackground: rgb(51, 49, 53);
    --settingsmodalwidth: 960px;
    --settingsmodalheight: 80vh;

    /* avatar only member list */
    --memberlist-border-radius: 25px; /* can be in `px`, `rem`, `em` */

    /* placeholder texts/values */
    /* input fields */
    --chillax-input-field: "Life is so much easier when you just take a moment to chill";
    /* input fields  when the channel is locked*/
    --chillax-input-field-locked: "Life is so much easier when you just take a moment to chill";
    /* typing indicator: when a single person is typing */
    --chillax-input-typing-indicator-one-person: "is smashing some buttons";
    /* typing indicator: when more than one person is typing */
    --chillax-input-typing-indicator-many-person: "are smashing some buttons";

    /* scroller (by default transparent) */
    --chillax-scroller-color: transparent; /* change `transparent` to some other hex color to make it visible */
}

/*discord transparency*//*roots*/ /*theme dark*/
.theme-dark {
    --background-message-hover: rgba(255, 255, 255, 0.055);
    --header-primary: #fff;
    --header-secondary: #b9bbbe;
    --text-normal: #dcddde;
    --text-muted: #9d9d9d;
    --channels-default: #8e9297;
    --interactive-normal: #b9bbbe;
    --interactive-hover: #dcddde;
    --interactive-active: #fff;
    --interactive-muted: #4f545c;
    --background-primary: transparent;
    --background-secondary: transparent;
    --background-tertiary: transparent;
    --background-accent: rgb(36, 36, 36);
    --activity-card-background: transparent;
    --deprecated-panel-background: transparent;
}

/*discord transparency*//*roots*/ /*theme light*/
.theme-light {
    --background-message-hover: rgba(255, 255, 255, 0.055);
    --header-primary: rgb(0, 0, 0);
    --header-secondary: #3f3f3f;
    --text-normal: #303030;
    --text-muted: #333333;
    --channels-default: #585b5e;
    --interactive-normal: #3a3a3a;
    --interactive-hover: #333333;
    --interactive-active: rgb(0, 0, 0);
    --interactive-muted: #4f545c;
    --background-primary: transparent;
    --background-secondary: transparent;
    --background-tertiary: transparent;
    --background-accent: rgb(27, 27, 27);
    --activity-card-background: transparent;
    --deprecated-panel-background: transparent;
}

/*!*friends grid banner colour*!*/
/*.theme-dark {*/
/*    --FG-cards-banner-background: transparent !important;*/
/*}*/

/*.theme-light {*/
/*    --FG-cards-banner-background: transparent !important;*/
/*}*/


/*Permissions*/
/*
- You do not have the rights to use our theme name Chillax™ on other projects
- You do not have the rights to remove our theme watermark in the theme
- You do not have the rights to change this theme author/dev/maintainer name to anyone
*/

/*credits*/
/*
========================= Chillax Squad =========================
 Wq                                       Owner & Dev
 LofiTurtle                               Dev & Maintainer
 Inmoresentum                             Dev & Maintainer
 Demented_Elmo                            Dev
=================================================================
 Embeds                                   by Alexis WyvernZu
 Active Now CSS                           by Cedrick
 Memberlist until hover                   by Cedrick
 Hide User Buttons until Hover            by Commie Axolotl
 Center profile badge, avatar and name    by Commie Axolotl
 Account Details Grid                     by Dablulite
 Blurple recolour                         by DevilBro
 Emoji Replace                            by DevilBro
 Settings Icons                           by DevilBro
 Connection Issue Let Me Be               by Disease
 Radial Status                            by Gibbu
 About Me Clamp                           by ItMeSarah
 Better Jump to Present Button            by Lonk
 Better Mark As Read Button               by Lonk
 IconPack                                 by Lavender
 Discolored                               by Nyri4
 Better Spotify Control                   by Uri
=================================================================
*/
/*I really want to give a special shoutout to all of you for supporting me in this theme, thank you all.*/

Et le rendu

Loading

  •  

Stump : serveur/lecteur de comics/manga auto-hébergé

Amateur de BDs et comics, j’ai utilisé Ubooquity des années avant de passer sur Komga et Kavita. Je suis resté sur Komga par habitude.

Je lis mes contenus via le Web sur PC et via sur ma tablette Android dédiée à ça. Je recommande d’ailleurs ce modèle FASTWD 2K. Du noname asiat’ mais de 14″, nickel pour lire des BDs en format A4 (ou presque). Seul bémol, le poids de 2Kgs mais on s’y fait. Je suis de ceux qui ne peuvent lire des BDs sur des écrans de smartphones ou petites tablettes et veulent se rapprocher du format originel.

Komga est très sympa

Mais Stump, en cours de développement, semble plus léger encore

On peut les utiliser via le Web directement ou via une application telle que Mihon (qui remplace tachiyomi).

Et en parlant de comics, surveillez Kapowarr, loin d’être mature, c’est sans doute le futur remplaçant (utile) de Mylar3.

Un *arr pour les BDs et Comics qui pour l’instant fonctionne avec du DDL/qBittorrent et GetComics, donc que pour les comics en EN/US. Pas d’intégration de Prowlarr/Jackett/blackhole)/Usenet ni de possibilité d’indexage d’une bibliothèque existante. Beau projet, à suivre de près 🙂

Loading

  •  

Quelle solution de serveur basse consommation pour UNRAID ? Pour ma part : le LincStation N1 !

Edit 11/10/24 : lien de parrainage LincPlus (merci !)

Nouvelle lubie : me monter ou dénicher une solution de serveur (pour UNRAID) en basse consommation. Je souhaite y faire tourner un proxy Nginx et quelques services légers, Immich, un peu de DL Usenet via des *arr et un Plex. Donc pas besoin d’une grosse machine, d’où ma quête d’efficacité énergétique.

Évidemment, le but est de rester sur un budget low cost inférieur à 400€. Sachant que j’ai déjà un paquet de HDD/SSD dont je ne sais que faire.

Au gré de mes recherches, je me suis concentré sur du Intel N100, Minisforum, LattePanda Sigma, Geekom, les forums d’UNRAID, LincStation (découvert via le site d’UNRAID), GMKtec… Les forums de Reddit sont, comme toujours, une grosse source de recherche, malgré le temps que ça prend.
En passant, voici un bon forum allemand dont la communauté tient un GSheet de setups avec indices de consommation et C-States.

Intéressant de noter que le fameux N100, TDP de 6W, consomme entre 2 et 3 fois ça puisque ça dépend énormément de la carte-mère. Je sais bien que réfléchir en TDP n’est pas gage de vérité, mais c’est pour moi un bon indicateur pour envisager une consommation électrique moyenne, sachant pertinemment que le refroidissement d’un CPU/GPU est très consommateur de ressources.

Par ailleurs, y compris sur UNRAID, on peut jouer avec TLP qui permet d’optimiser la consommation électrique d’une machine sous Linux.

UNRAID permet aussi de mettre en veille les disques non utilisés (spin down).

J’ai déjà eu de nombreux NUCs Intel (assez chers à l’époque d’ailleurs, même 10 ans en arrière, Intel y a mis fin en 2023) et également des HP Elite/Pro desk (on peut notamment en faire un cluster). Le souci de ces derniers est qu’il est très compliqué d’y ajouter du stockage. Et de toute manière, vu que je tourne maintenant avec UNRAID, le cluster de machines… ^^’

Pour résumer, j’ai besoin de :
– CPU basse consommation mais suffisamment puissant pour jouer un 4K dans Plex (local),
– Possibilité d’ajouter plusieurs disques, peu importe leur format,
– RJ45 2.5GBps,
– Ne pas trop m’enquiquiner à monter une machine (j’ai plus vraiment de pièces qui traînent chez moi),
– Coller avec un petit budget de maxi 400€.


Après quelques semaines de pérégrination sur Internet, ma conclusion est que le LincPlus LincStation N1 est le produit du moment qui répond le mieux à l’ensemble de mes besoins :
– Intel Celeron N5105 @ 2.00GHz (suffisamment puissant pour Plex sans pour autant consommer beaucoup),
– 16Go de RAM,
– 6 slots de disques : 4x M.2 NVMe et 2x SATA en 2.5″ (donc SSD ou petits HDD, j’ai les 2 en stock),
– 1 port RJ45 2.5G, 1 USB-C et 2 USB3,
– Juste dans mon budget…
Ils le vendent avec une licence UNRAID. Je verrai ce que c’est, j’ai déjà ma licence Pro, achetée avant la refonte des prix, c’est maintenant la Lifetime.

Fun fact, c’est moins cher sur Amazon… (surtout avec les remises Prime des 8 & 9/10 !)

Reçu la bête en 48h, y’a 30 minutes. Sans surprise, c’est made in China. Désolé de la qualité des photos, j’ai beau me la péter avec un iPhone, quand on sait pas prendre de photos y’a rien de magique ^^’

NAS, alimentation, manuel (EN/DE/FR) et code d’activation d’UNRAiD.

C’est plus petit que je ne le visualisais

Le dessus du NAS est une coque en plastique noir mate, sous laquelle viennent se loger les 2 tiroirs de SATA 2.5″ et, sans doute (j’ai pas envie de démonter ça de suite) couvre un dissipateur thermique pour CPU/CM.


Sur l’envers du NAS, 2 emplacements de 2 NVMe. Système de clips pour les capots, languettes à ressort qui remplace la classique vis de serrage aux fesses et surtout de la pâte thermique, protégée à la livraison, qui permet de gérer au mieux la chaleur dégagée.

En regardant ma photo je vois que les 2 de droite ne sont pas enclenchés et que j’ai oublié de retirer la protection de la pâte thermique de gauche… « belle journée ! »

Une fois les disques mis, on branche un câble réseau, l’alimentation et c’est parti 🙂 Comme c’est UNRAiD, il suffit d’aller sur http://tower.local/ pour tomber sur la WebUI où on peut créer un mot de passe.

De suite on passe à la partie licence.

Je teste leur code acheté avec le NAS => redeem Activation Code. Il détecte bien mes 5 disques.

Sans surprise c’est une Starter Licence à 49$ qui permet de gérer jusqu’à 6 disques. Le maxi qu’embarque le Lincstation N1.

Je souhaite évidemment conserver ma licence Lifetime, pour ça il suffit de cliquer non pas sur Redeem Activation Code mais sur Recover Key. Sur notre espace UNRAiD, gestion de licence, on peut soit télécharger le fichier soit obtenir son URL, à utiliser ici :

Chez UNRAiD, une licence est liée à une clé USB. C’est cette dernière qui embarque l’OS et sa configuration. J’ai donc le message qui va bien et logique : la clé insérée n’est pas liée à cette clé USB (disque flash dans le cas du N1).

Aucun problème, on peut transférer la licence sur un nouveau support

Et voilà, ne me reste plus qu’à recréer l’array de disques et injecter quelques backups de Dockers pour repartir comme en 40 !! 🙂 Et à repasser en BETA 7 aussi d’ailleurs.

Loading

  •  

Hydra Launcher : le *arr des jeux vidéos PC

Pour le jeu PC, je suis gros client Steam, Ubisoft (bien qu’ils ne fassent que de la daube depuis des années, j’ai mis 650€ dans R6S), GOG etc.

Mais très fréquemment, avant d’acheter un jeu, je le pirate pour le tester. Y’a plus les démos des années 90/2000, c’est pour moi un nouveau mode de consommation. Pour ce faire, je passe par Fitgirl et Dodi qui proposent de nombreux repacks et leurs MàJ à récupérer en DDL ou BitTorrent.
Notez au passage qu’on trouve également Fit Launcher pour les jeux Firgirl.

Et je viens de tomber sur le Graal des geeks pirates : Hydra Launcher, un *arr pour les jeux vidéos sur PC.

À installer sur Linux ou Windows, Hydra liste et permet de répertorier des jeux vidéos et de les lancer. On peut surtout y ajouter des sources (.json) qui permettent de télécharger directement depuis l’application (DDL/BitTorrent) des releases Dodi, Fitgirl, GOG (les gratuits), LinuxRulez, Digital Zone etc.

J’ai testé sur Windows, mon Archlinux ne me permettant pas de jouer, et en BitTorrent (derrière un VPN). Pour l’instant, il n’est pas possible d’ajouter un proxy, un VPN ou un client BitTorrent externe. Mais ça semble être dans les soutes à lire les PR et Issues.
À ce stade, Hydra ne seed plus une fois le téléchargement complété. Pas cool pour le principe du BitTorrent mais bon à savoir.

Pour chercher, télécharger et installer un jeu, rien de compliqué du coup…

Évidemment pour que ça marche il faut des sources ! Voici ce que j’ai trouvé pour l’instant
https://hydralinks.cloud/ : Fitgirl/Dodi/GOG/EMPRESS/SteamRip/Tiny/XATAB
https://github.com/KekitU/rutracker-hydra-links : ruTracker
https://github.com/ertila007/ErtilaRepo.json : LinuxRulez/DigitalZone
https://raw.githubusercontent.com/YHISK/IGG-Games-PCGamesTorrents-Hydra-Links/main/files/02.%20PCGameTorrents%20-%20Symbols.json : de tout…

On peut bien entendu ajouter des jeux déjà installés comme ici avec D4.

J’ai pas trouvé d’utilité à se créer un compte.

Loading

  •  

Autoblow AI Ultra : la masturbation masculine assistée par l’IA

Cet article n’est pas sponsorisé (mais je suis ouvert aux opportunités :P).

Peu attiré par l’univers du plaisir solo, j’ai pourtant été intrigué par une publicité d’AutoBlow.

Ils proposent des outils de masturbation assistée, et dans le cas du modèle qui m’intéresse, assistée par l’IA. Alors attention, c’est ni magique ni ultra techy, c’est… perturbant et amusant (avis subjectif ofc!).

C’est avant-tout un masturbateur tel qu’il en existe plein : commandes sur l’objet ou via leur interface Web (vocale aussi pour les anglophones), réglages de vitesses, rythmes et « distance » (les p’tits kiki c’est mort, ça remontera trop dans le tube pour vous). La nouveauté, pour moi qui ne suis absolument pas expert du sujet, c’est que l‘Autoblow AI Ultra se synchronise sur des vidéos.

La fabricant, via son site https://fun.autoblow.com/, propose aussi bien des vidéos synchronisées que de faire les siennes, auquel cas il faut envoyer la vidéo et le script qui va avec.

Pour créer ce dernier, j’ai pas eu le courage de tester, on peut s’appuyer sur les experts du forum https://discuss.eroscripts.com/.

L’API a beau être ouverte, elle est sommaire.
Il est par conséquent compliqué de profiter du gadget hors ligne. Il faut suivre un peu Reddit, le forum Eroscripts et GitHub. Voici un exemple d’utilisation locale de l’API pour jouer une vidéo et son script associé (à créer par exemple, assurément le plus simplement via le site qui suit) avec autoblow-ultra-playground de whacom383.

On peut également passer par le site gratuit https://faptap.net/ qui permet, outre de profiter de vidéos déjà synchronisées, d’envoyer des liens Pornhub pour que leur « IA » crée le script qui va bien. Pour un résultat optimal, il faut que les organes soient bien visibles dans la vidéo. Limite de 10 sync/24h.
On peut récupérer le script de chaque vidéo publiée sur le site, ce qui permet éventuellement de profiter de tout ça hors ligne notamment en téléchargeant la vidéo Pornhub via un des innombrables YoutubeDL autohébergés.

Les tags sont générés automatiquement et ils permettent d’affiner une éventuelle recherche sur le site via le menu correspondant.

Autre possibilité : profiter de la VR avec ce gadget. N’ayant pas de casque, je n’ai pas testé (mais, encore une fois, je suis ouvert aux cadeaux & tips !). Le site to be semble être https://www.sexlikereal.com/
Pour les amateurs, vous pouvez passer par les sites susnommés ou faire ça en local (après avoir récupéré des scripts pour vos vidéos) en utilisant le lecteur VR HereSphere (payant ou trouvable en .apk cerisé) et en utilisant hbas d’Occam59.

Pour profiter de son gadget hors ligne il n’y a, du haut de mes maigres et rapides recherches, que quelques solutions :
– Utiliser les boutons intégrés,
– Envoyer un lien Pornhub sur Faptap, récupéré le script et télécharger la vidéo localement, lire ça avec l’outil de whacom383 ou le player de FredTungsten sur Github : pas simple (pas testé du coup). À savoir que le gars propose des scripts prêts, encore faut-il trouver les vidéos correspondantes.
– Dans la lignée, on peut aussi profiter de vieux scripts de funjack. Il mettait à disposition un contrôleur opensource mais je n’ai pas réussi à le faire fonctionner sur Arch.
– Funscripts & vidéos sur des trackers BitTorrent dédiés au porn.
Sachant que dans tous les cas ça passe quand même par l’API d’Autoblow.


Pour créer un script :
– Faptap qui automatise le process,
L’outil d’hosenguy proposé sur Eroscripts qui permet de générer un script automatiquement à partir d’une piste audio (Cock Hero etc). Il n’est disponible que pour Windows…
– Open FunScripter (OFS) qui permet de créer un script depuis une vidéo, manuellement en bougeant la souris au « bon rythme ». Y’a de la documentation,
FredTungsten propose également un outil que je n’ai pas testé,
FunScript Generator, un script Python.


Mon retour d’expérience :
– Marrant, pour le côté geek du truc,
– Procure du plaisir mais ne remplace ni une main ni un.e partenaire,
– J’apprécie l’idée, très personnelle, que ça puisse permettre à certains de ne pas recourir à des services d’escorts,
– Prix correct pour peu qu’on puisse définir un rapport prix/utilité pour ce genre de gadget,
– On trouve énormément de vidéo d’animes (dont je ne suis pas consommateur).

Loading

  •  

Hoarder : liens, images, textes et PDF en favoris avec recherche et tags auto

Il existe plusieurs alternatives autohébergées à Pocket, la plus connue étant (d’après moi) Wallabag, que j’ai utilisé des années jusqu’à ma « boulette » où j’ai perdu mon blog et mon instance Wallabag (et leurs backups).

Voici un Wallabag avec de l’AI (OpenAI ou Ollama autohébergé) : Hoarder (site Web / GitHub)
Fonctionne depuis une page Web, applications iOS/Android et plugins Firefox/Chrom*.

J’ai aussi testé rapidement Benotes et il faut reconnaître que le gros avantage de Hoarder est de générer les tags automatiquement. Certes, on pourrait peaufiner (surtout que je les demande en français et non english) mais quand on monte à des 100aines de liens sauvegardés, les tags sont salvateurs…

On l’installe évidemment en 2-2 via Docker en suivant la documentation ou via mon exemple de compose :

version: "3.8"
services:
  web:
    image: ghcr.io/hoarder-app/hoarder:latest
    restart: always
    volumes:
      - /mnt/user/appdata/hoarder/web:/data
    ports:
      - 3067:3000
    environment:
      MEILI_ADDR: http://meilisearch:7700
      BROWSER_WEB_URL: http://chrome:9222
      OPENAI_API_KEY: ccc
      INFERENCE_LANG: french
      INFERENCE_TEXT_MODEL: gpt-4o-mini
      INFERENCE_IMAGE_MODE: gpt-4o-mini
      DATA_DIR: /data
      NEXTAUTH_SECRET: aaa
      MEILI_MASTER_KEY: bbb
      NEXTAUTH_URL: http://localhost:3000
    labels:
      - com.centurylinklabs.watchtower.enable=true
  chrome:
    image: gcr.io/zenika-hub/alpine-chrome:latest
    restart: always
    command:
      - --no-sandbox
      - --disable-gpu
      - --disable-dev-shm-usage
      - --remote-debugging-address=0.0.0.0
      - --remote-debugging-port=9222
      - --hide-scrollbars
    labels:
      - com.centurylinklabs.watchtower.enable=true
  meilisearch:
    image: getmeili/meilisearch:latest
    restart: always
    environment:
      MEILI_NO_ANALYTICS: "true"
      NEXTAUTH_SECRET: aaa
      MEILI_MASTER_KEY: bbb
      NEXTAUTH_URL: http://localhost:3000
    volumes:
      - /mnt/user/appdata/hoarder/meilisearch:/meili_data
    labels:
      - com.centurylinklabs.watchtower.enable=true

Je me base sur OpenAI pour les tags et il sont en français avec la variable INFERENCE_LANG: french

L’application iOS me permet surtout d’y ajouter des liens plutôt que pour les consulter évidemment (à tester sur iPad).

Loading

  •  

Docker labels sur UNRAID

La gestion de Docker sous UNRAID est bonne, mais il manque l’ajout simple de labels. Certes on peut passer par du compose (plugin) ou un outil tiers tel que DockGE mais là par exemple je viens d’installer Watchtower et je cherchais aussi un moyen d’envoyer du label à la volée.

Enfin on peut ajouter des labels, c’est d’ailleurs le cas de base (on le voit à la fin du lancement d’un container sur le panel), mais ça impliquerait de lancer les Dockers à la main, en CLI. Ce qui est dommage sur UNRAID 🙂

[...]
  -l net.unraid.docker.managed=dockerman
  -l net.unraid.docker.webui='http://[IP]:[PORT:3000]/'
  -l net.unraid.docker.icon='https://raw.githubusercontent.com/SiwatINC/unraid-ca-repository/master/icons/adguard.png'
[...]

La simplicité est de mise avec le super plugin docker.labelinjector de Phyzical. On y entre un ou des labels à appliquer ensuite à un ou plusieurs Dockers.

Il ne reste ensuite qu’à utiliser le plugin côté Docker

Sélectionner le ou les containers concerné.s par un ou plusieurs label.s

Loading

  •  

BW-Export : sauvegarde chiffrée de Bitwarden ou Vaultwarden

J’utilise les services de Bitwarden pour stocker mes mots de passe et clés. On peut aussi héberger ça via Vaultwarden mais comme j’ai pas confiance en moi après avoir supprimé des années de (backup de) blogging, je n’héberge plus aucun service critique directement au garage pour l’instant…

Quoi qu’il en soit, ces gestionnaires reposent sur un accès unique à l’ensemble de ses mots de passe. En cas de plantage du service ou tout simplement de perte de mémoire, ça peut devenir compliqué. BW-Export permet, comme son nom l’indique, d’exporter ses données Bitwarden de manière sécurisée en utilisant l’outil Bitwarden-CLI original, dans un Docker. L’export réalisé peut donc être réinjecté en quelques clics via l’application/plugin Bitwarden.

Chacun fera comme il veut, je lance le Docker tous les 15 jours en cron et lui demande de conserver toujours 3 sauvegardes différentes. Il existe un template pour UNRAID mais même sur cet OS, je préfère lancer ça tous les 15 jours via User Scripts.

Pour s’en servir, il convient de récupérer son client_id et client_secret, son mot de passe unique BW et d’en choisir un pour le chiffrement du backup.

docker run --rm \
--name=bitwarden-export \
-e TZ=Europe/Paris \
-e BW_CLIENTID=user.aaa \
-e BW_CLIENTSECRET=bbb \
-e BW_PASSWORD=ccc \
-e EXPORT_PASSWORD=ddd \
-e KEEP_LAST_BACKUPS=3 \
-e FILE_LOG=/var/data/logs.log \
-v /mnt/user/appdata/bw-export:/var/data \
-v /mnt/user/appdata/bw-export:/var/attachments \
0netx/bw-export

Le process de sécurité de BW nous indique que nos identifiants sont utilisés en CLI

On peut voir dans les logs que les informations sensibles ne sont pas rapportées

root@HomeBox:~# tree /mnt/user/appdata/bw-export/
/mnt/user/appdata/bw-export/
├── 20240817084820-bw-export
│ └── bitwarden_encrypted_export_20240817104824.json
├── 20240817090948-bw-export
│ └── bitwarden_encrypted_export_20240817110952.json
├── 20240817094105-bw-export
│ └── bitwarden_encrypted_export_20240817114110.json
└── logs.log

Exemple de sauvegarde chiffrée

{
  "encrypted": true,
  "passwordProtected": true,
  "salt": "xxx",
  "kdfType": 0,
  "kdfIterations": 100000,
  "encKeyValidation_DO_NOT_EDIT": "xxx",
  "data": "2.OMlq6tqWKl1uNOFzhsZTDw==|AUrb+ToMJySQgg+1iVDN1518QKtBezn0eCkQiEgaQNVzC/vVAcCao39jCOHI1/Pq02ZuJJepsKHezoBLArvpqtTscl5F8gYCVyF4S1/kZDE8VkuT4JrPF+QgP4/ehKZARnn4FQZqUnbOcP1CLZ6tYjaMUhiBSmXiHv2jBLhgFxhOXA2Wyt7fKYuFTKOemycLOmFUOx88ce9LUucgmYr5XIKxK3Fpa5IXt49/YwsE1b9piyEWMmDt2paM6oEui7bXKG4HUz9M8N+O9gPjVBgps1Mi65Klgy0WTPALRPh2Cu/10iKIEQuXOTpjlsskMhoYFCpcVnfeJD11a8Bp97SrFeXwWB5IzvaIUqUyxrBxeoi9B4BovhLFfnBIf7Jg30BeLUTLINNNySg3aBkXdEVZEKKAvH [...]
 
Et pour importer les données sauvegardées, il suffit de se rendre sur son compte Bitwarden (ou instance Vaultwarden), menu Outils/Importer des données. Ici j’ai créé un coffre de TEST. On sélectionne son fichier de sauvegarde.json, on entre le mot de passe de chiffrement requis et c’est parti !
 

Loading

  •  

Projectivy : launcher AndroidTV simple, sobre et complet

Du moment où j’ai commencé à voir des pubs sur ma nVidia Shield je me suis mis en quête d’un launcher alternatif, comme je faisais systématiquement sur mes smartphones Android à l’époque. J’avais déjà publié un article sur feu mon blog au sujet de Wolf.
Depuis très longtemps maintenant, j’ai changé pour Projectivy (qui suffit amplement en version gratuite) : Github / XDA / GooglePlay

Le principe est de modifier le bureau de la box Android afin d’y placer les raccourcis de notre choix avec le fond d’écran qui va bien. L’un des intérêt de Projectivy est d’ailleurs que les wallpapers tournent et proviennent soit d’une galerie personnelle soit de threads Reddit.

J’utilise toujours Launcher Manager, je ne sais pas si c’est absolument nécessaire.

Loading

  •  

Nouveau serveur UNRAID : HP Proliant ML 350 G6

Venant de Debian/Ubuntu pour les serveurs, passé par Proxmox de longues années, j’avais testé et acheté une licence UNRAID Pro. Puis j’étais reparti sur Debian. Puis comme je suis « Aerya », je tente de canaliser ma soif de tests et découvertes et me suis recentré sur UNRAID depuis quelques semaines.

Pour ça exit les NUCs et autres anciennes machines, j’ai voulu repartir non pas sur du neuf mais sur du plus robuste : un serveur HP Proliant ML350 G6 (10€ en ressourcerie). Un vieux machin mais pourvu de 2 processeurs, 2 alimentations, une carte RAID et de ports SATA/PCI-e permettant d’ajouter plein de bordel 🙂

J’ai changé de CPU et l’ai passé sur du dual X5675, changé la RAM pour 112Go ECC (112 parce je me suis planté dans ma commande) et quelques vieux HDD/SSD. La bête tourne rond même si elle souffle beaucoup vu l’auto-régulation.
Il embarque UNRAID évidemment, pour héberger Plex/*arr, de quoi jouer sur Usenet et 2-3 autres trucs. Tout comme ce blog bien entendu.

Je suis revenu sur UNRAID, déjà parce que j’ai payé ma licence à l’époque (ancien modèle, licence Pro à vie, disques illimités, pour 130€), ensuite parce que de tous les OS pour serveur/NAS DIY que j’ai utilisés, il est le plus complet par rapport à mes besoins : simplicité, fiabilité, Docker/VM/LXC, RAID hybride Avec le Theme Park qui va bien 🙂

Loading

  •  

SSHwifty : WebUI SSH et TELNET

Je jongle toujours entre mon PC Linux, ma VM avec WebUI Linux, mon PC gamer sous Windows et le Mac du boulot.
Je suis donc en train de passer de plus en plus d’applicatifs en accès Web. J’ai déjà Tor Browser et I2P et un Firefox « direct », je cherchais un terminal et ai trouvé mon bonheur avec SSHwifty !
S’installe rapidement en Docker, je l’ai d’ailleurs calé sur le réseau de mon VPN. Il convient de créer un certificat SSL pour chiffrer les échange entre le client Web et le terminal : j’ai mis une durée de 3600 jours de validité pour ne pas être ennuyé trop souvent ^^

openssl req -newkey rsa:4096 -nodes -keyout domain.key -x509 -days 3600 -out domain.crt

Comme le SSL est auto-signé, il faut par conséquent l’accepter lors du 1er accès dans le navigateur

Et on peut ensuite configurer des accès Telnet et SSH, à enregistrer ou non pour un accès rapide (sauf les mots de passe/clés)

Et on peut ensuite profiter de son terminal depuis n’importe quel PC/smartphone 🙂

Et enregistrer la session

Loading

  •  

Reborn! Renaissance du blog

Salut,

Le blog renaît enfin 🙂
Lancé en 2015, des centaines d’articles et tutoriels plus tard, j’ai tout déglingué en passant de WordPress à Ghost et… en supprimant les mauvaises sauvegardes.

Il me reste 1 an de blogging sur Ghost. Je remettrai peut-être ça en ligne sous forme d’archive.
Dans tous les cas, je repars sur de nouvelles bases. Reprise de WP, l’outil le plus malléable pour le blogging et la gestion des commentaires.
Je cherche à me faciliter la vie en créant des featured images de manière automatique. l’IA est capable de pondre des bouquins et de doubler/déformer des visages en temps réel mais je ne trouve rien qui puisse créer une simple image à partir des mots d’un article 🙁
Donc y’aura de l’expérimentation « live » sur le blog.

À bientôt 🙂

Loading

  •  

Road to Eye-catching Landscape

The new common language will be more simple and regular than the existing European languages. It will be as simple as Occidental; in fact, it will be Occidental. To an English person, it will seem like simplified English, as a skeptical Cambridge friend of mine told me what Occidental is. The European languages are members of the same family.

  •  

Serious Problems with Cables in CIty

The new common language will be more simple and regular than the existing European languages. It will be as simple as Occidental; in fact, it will be Occidental. To an English person, it will seem like simplified English, as a skeptical Cambridge friend of mine told me what Occidental is. The European languages are members of the same family.

  •  

Montain and Winter Cold Weather

If several languages coalesce, the grammar of the resulting language is more simple and regular than that of the individual languages. The new common language will be more simple and regular than the existing European languages. It will be as simple as Occidental; in fact, it will be Occidental.

  •  

Bonjour tout le monde !

Bienvenue sur WordPress. Ceci est votre premier article. Modifiez-le ou supprimez-le, puis commencez à écrire !

  •  

Station d'accueil USB 5 baies en SATA

Station d'accueil USB 5 baies en SATA

J'ai encore changé mon setup serveurs à la maison... Je pense que dès qu'un truc tourne rond ça m'angoisse, me perturbe et m'incite à tout éclater pour recommencer 😦 🥳

Exit UNRAID, retour sur Debian server + Docker (et toujours dockge, ultra pratique !) \o/

J'en ai profité pour racheter un mini PC HP EliteDesk 705 G4, en Amazon refurbished, avec un Ryzen 5 Pro 2400ge, 16Go de RAM et NVMe+SSD. Sous Debian également, son job est de faire tourner ce blog, AdGuardHome, un proxy Nginx et un speedtest. Pour l'instant, il peut faire bien plus.

UNRAID tournait sur un HP ProDesk 400 G6 Desktop Mini PC embarquant un i5-10500T, 12Go de RAM et NVMe/SSD. C'est lui qui s'est pris un reset des familles (ou presque vu qu'UNRAID tourne sur une clé USB) et après ajout d'une Debian server, je commence à réinstaller du Plex/*arr + Usenet/BitTorrent. Je voulais lui ajouter un peu de stockage et je suis tombé sur un sympathique rack sur Amazon : ORICO Station d'Accueil 5 Baies pour Disques Durs avec Fonction de Clonage Hors Ligne

Pour 130€, c'est un dock avec 5 slots SATA, en USB et alimentation externe. Évidemment, vu l'USB, faut pas s'emballer et utiliser ça pour du gaming. Mais pour stocker des documents, seeder en BitTorrent ou streamer une vidéo c'est parfait !

Station d'accueil USB 5 baies en SATA

Il y a un petit bouton aux fesses pour activer le mode PC ou clonage. J'ai pas testé mais il semble que ce soit tout à fait au point :)

Station d'accueil USB 5 baies en SATA
Station d'accueil USB 5 baies en SATA

En PC les disques sont reconnus tout de suite sur Windows comme Linux, je les ai montés dans /mnt/DataExt et Films, Series etc.

aerya@HomeBox:~$ df -H
Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
udev               8,3G       0  8,3G   0% /dev
tmpfs              1,7G    1,1M  1,7G   1% /run
/dev/nvme0n1p2     250G    2,3G  235G   1% /
tmpfs              8,3G       0  8,3G   0% /dev/shm
tmpfs              5,3M       0  5,3M   0% /run/lock
/dev/nvme0n1p1     536M    6,2M  530M   2% /boot/efi
tmpfs              1,7G       0  1,7G   0% /run/user/1000
tmpfs              1,7G       0  1,7G   0% /run/user/0
/dev/sda1          472G     29k  448G   1% /mnt/DataInt
/dev/sdb1          8,0T     29k  7,6T   1% /mnt/DataExt
/dev/sdc1          2,0T     29k  1,9T   1% /mnt/Films
/dev/sdd1          2,0T     29k  1,9T   1% /mnt/Series
/dev/sde1          2,0T     29k  1,9T   1% /mnt/Stuff
/dev/sdf1          2,0T     29k  1,9T   1% /mnt/Comics
Station d'accueil USB 5 baies en SATA
Screen de cockpit
  •  
❌