Aller un bon REX ca fait pas de mal ! ( meme en famille ou entre amis parfois... )
A plain docker environment for building static binaries compiled with rust and linked against musl instead of glibc. Built nightly on travis.
This is only useful if you require external C dependencies, because otherwise you could do rustup target add x86_64-unknown-linux-musl.
This container comes with a bunch of statically compiled C libraries using musl-gcc so that we can statically link against these as well.
If you already have rustup installed on the machine that should compile, you might consider cross as a more general solution for cross compiling rust binaries.
Usage
Pull and run from a rust project root:
docker pull clux/muslrust
docker run -v $PWD:/volume --rm -t clux/muslrust cargo build
You should have a static executable in the target folder:
ldd target/x86_64-unknown-linux-musl/debug/EXECUTABLE
not a dynamic executable
From there on, you can include it in a blank docker image (because everything you need is included in the binary) and perhaps end up with a 5MB docker blog image.
This post is intended as a tour of various techniques (not necessarily all practical) of reducing program size, but if you demand some conclusion, the pragmatic takeaway is that:
Compile with --release.
Before distribution, enable LTO and strip the binary.
If your program is not memory-intensive, use the system allocator (assuming nightly).
You may be able to use the optimization level s/z in the future as well.
I didn’t mention this because it doesn’t improve such a small program, but you can also try UPX and other executable compressors if you are working with a much larger application.
Meet Rocket.
Rocket is a web framework for Rust that makes it simple to write fast, secure web applications without sacrificing flexibility, usability, or type safety.
Native desktop client for Slack, Skype, Gmail, Facebook, and more
Via shaarlo et sam&max.
Merci pour le poisson
Check 2G, 3G, and 4G LTE Network Frequency Compatibility for a Smartphone, Tablet, and Mobile Device in any Country and Mobile Network Carrier
David Patterson and Ion Stoica The publication of “Above the Clouds: A Berkeley View of Cloud Computing” on February 10, 2009 cleared up the considerable confusion about the new notion of “Cloud Computing.” The paper defined what Cloud Computing was, where it came from, why some were excited by it, what were its technical advantages, and what were the obstacles and research opportunities for it to become even more popular. More than 17,000 citations to this paper and an abridged version in CACM—with more than 1000 in the past year—document that it continues to shape the discussions and the evolution of Cloud Computing. “Cloud Programming Simplified: A Berkeley View on Serverless Computing” with some of the same authors commemorates the ... Read More
ssh-pageant-done
gpgconf --launch gpg-agent
failure
For some users, it may be desirable to tie OpenSSH in to the PuTTY authentication agent (Pageant) using ssh-pageant. This is a drop-in replacement for ssh-agent, which simply builds a connection between OpenSSH and Pageant for key-based authentication. The tool makes it easy to leverage OpenSSH for remote repository access, which tends to be the most reliable choice within the specific context of Git for Windows (Git), without the need to run multiple agents which don't interoperate.
This functionality became available with the release of Git 2.8.2.
If you always use Git from within Git Bash, then the most straightforward approach is to have it launch ssh-pageant on your behalf. Simply create/edit your _$HOME/.bashprofile (or $HOME/.profile, if you prefer), and add the following.
# ssh-pageant allows use of the PuTTY authentication agent (Pageant)
SSH_PAGEANT="$(command -v ssh-pageant)"
if [ -x "$SSH_PAGEANT" ]; then
eval $("$SSH_PAGEANT" -qra "${SSH_AUTH_SOCK:-${TEMP:-/tmp}/.ssh-pageant-$USERNAME}")
fi
unset SSH_PAGEANT
The -qra "${TEMP:-/tmp}/.ssh-pageant" construct is equivalent to the -q -r -a filename options. In this context it means:
By specifying the socket name (defaulting to $SSH_AUTH_SOCK, if set) along with the reuse option, we ensure that only a single running copy of ssh-pageant (per user) is required. Otherwise a separate incarnation would be launched every time Git Bash is invoked.
Now start a new Git Bash session, or source the profile edited just above, and run the ssh-add -l command. If all is well, and Pageant is running (with one or more keys loaded), you should see something similar to the following.
$ ssh-add -l
4096 SHA256:XjN/glikgdBoBclg4EaN8sJ/ibrxTq7zVydpkUwANzk Heinz Doofenshmirtz (RSA)
If you use Git from Git CMD, or directly from the Windows command prompt, then you'll probably want to ensure that ssh-pageant is launched automatically at logon time. The start-ssh-pageant.cmd script is provided for this purpose, which resides in the cmd subdirectory of your Git installation.
Unlike the Git Bash case above, this scenario requires the SSH_AUTH_SOCK environment variable to be set before running the script... otherwise it will simply exit without performing any action. This is normally configured as a persistent USER variable, with the value specifying the desired socket file path in Unix/MSYS2 format.
NOTE: Since there can only be a single global variable of a given name, this approach may or may not cause conflicts if you have multiple environments which utilize the SSH_AUTH_SOCK setting. Running Git alongside of Cygwin, or MSYS2, for example. One way to address this is to use a fully-qualified Windows path for the socket instead of an environment-specific Unix/MSYS2 path.
Launch the Control Panel, and then select System followed by Advanced system settings. Click on the Environment Variables button, and finally New... in the User variables (not System variables) section. Enter SSH_AUTH_SOCK for Variable name and /tmp/.ssh-pageant-%USERNAME% for Variable value, then click OK.
Now launch a new Git CMD or Windows command prompt (pre-existing sessions won't see the new variable), and enter the command set SSH_AUTH_SOCK. If all went according to plan, you should see something similar to the following.
C:\Users\heinz.doofenshmirtz> set SSH_AUTH_SOCK
SSH_AUTH_SOCK=/tmp/.ssh-pageant-heinz.doofenshmirtz
NOTE: the cross-environment-compatible (git for windows, msys2, and cygwin) equivalent would require a fully qualified windows path like C:\Users\MYUSERNAME\AppData\Local\Temp\.ssh-pageant-MYUSERNAME. The correct value can be determined by running a command like cygpath --windows /tmp/.ssh-pageant-%USERNAME% in a Git Bash window.
At this point you should run start-ssh-pageant.cmd manually, in order to verify that the agent starts successfully. Assuming that Git is installed into C:\Program Files\Git, this should look something like:
C:\Program Files\Git\cmd> start-ssh-pageant
Starting ssh-pageant...
SSH_AUTH_SOCK='/tmp/.ssh-pageant-heinz.doofenshmirtz'
SSH_PAGEANT_PID=11444
Assuming that the relevant keys have been loaded into Pageant, you should now be able to perform Git operations which rely upon them using OpenSSH without being prompted for the passphrase.
The most common approach is to create a shortcut pointing to start-ssh-pageant.cmd, and place it in your startup folder (Start Menu / Programs / Startup). Once in place, it should be launched automatically when you logon to Windows and be available to all Git processes.
Since ssh-pageant (like ssh-agent) is intended to bypass the requirement to repeatedly enter your private key password, it's imperative that its socket file be private in order to use it safely. In other words, you want to be extremely careful on multi-user systems to ensure that the SSH_AUTH_SOCK file -- and preferably the directory which includes it -- isn't accessible to anyone else. For a normal Git for Windows configuration this shouldn't be an issue, as /tmp is normally mapped to a private location under your Windows user profile.
MiniSearch is a tiny but powerful in-memory fulltext search engine for JavaScript. It is respectful of resources, and it can comfortably run both in Node and in the browser.
#Use case
MiniSearch addresses use cases where full-text search features are needed (e.g. prefix search, fuzzy search, boosting of fields), but the data to be indexed can fit locally in the process memory. While you may not index the whole Wikipedia with it, there are surprisingly many use cases that are served well by MiniSearch. By storing the index in local memory, MiniSearch can work offline, and can process queries quickly, without network latency.
A prominent use-case is search-as-you-type features in web and mobile applications, where keeping the index on the client-side enables fast and reactive UI, removing the need to make requests to a search server.
la boite à outils du product owner
Le Cleiss (Centre des liaisons européennes et internationales de sécurité sociale) est un établissement public national, notamment chargé d'informer sur la protection sociale dans un contexte de mobilité internationale. Il est placé sous la double tutelle du ministre chargé de la sécurité sociale et du ministre chargé du budget.
Comprehensive Python Cheatsheet. Contribute to gto76/python-cheatsheet development by creating an account on GitHub.
Table of Contents
Command-Line Application Layouts
One-Off Script
Installable Single Package
Application with Internal Packages
Web Application Layouts
Django
Flask
Conclusions and RemindersUn Projet en Python ?
Ya pas mieux qu'un petit CTF pour s'entraîner à résoudre des challenges informatiques. Pour les initiés, CTF signifie Capture The Flag. C'est un excellent
Bienvenue sur les cours de Japonais d'Ici Japon !
La méthode d'Ici Japon, c'est 28 cours de japonais complets et gratuits, accompagnés d'exercices et de fiches pratiques qui vous permettent d'assimiler la langue de manière progressive et naturelle.
Pour accélérer considérablement votre apprentissage, utilisez nos applications smartphone basées sur des mnémoniques. Ce sont des outils indispensables grâce auxquels l'écriture japonaise vous paraîtra beaucoup plus simple !
The terminal command palette. Contribute to pindexis/marker development by creating an account on GitHub.
Très bon article très pédagogique.
(avec toutes les nuances que l'on veut entre les différents niveaux... :/ )
Changer le style de l'autoindex de NGINX via un hook et deux fichier ?
pas mal je vais tester
use_backend main-ssl if { req.ssl_hello_type 1 }
#use_backend openvpn if !{ req.ssl_hello_type 1 } !{ req.len 0 } // j'ai pas de VPN sur mon serveur.
use_backend xmpp if { payload(0,5) 3c3f786d6c } !{ req.ssl_hello_type 1 } !{ req.len 0 }
use_backend xmpp if { payload(0,5) 3c3f20786d6c } !{ req.ssl_hello_type 1 } !{ req.len 0 }
Super une porte dérobé dès la conception des processeurs... De mieux en mieux...
« On peut les appliquer quasiment partout »
« La technologie des pérovskites nous rapproche de l’objectif des bâtiments autosuffisants en énergie », souligne Adam Targowski, responsable du développement équitable chez Skanska. « Les pérovskites font leurs preuves même sur les surfaces peu exposées au soleil. On peut les appliquer quasiment partout. Plus ou moins transparents, les panneaux répondent aussi aux exigences du design. Grâce à leur souplesse et leurs teintes variables, pas besoin de construire des supports supplémentaires, d’intervenir sur la forme ou le dessin du bâtiment », explique-t-il.
Un panneau standard d’environ 1,3 m2, au coût attendu de 50 euros et au rendement comparable aux panneaux classiques, approvisionnera en énergie un poste de travail en bureautique à longueur de journée, selon les estimations actuelles. Un autre test grandeur nature a été lancé sur un hôtel au Japon, près de Nagasaki.
En quelques années seulement, « les pérovskites ont fait un long chemin, souligne le professeur Nazeeruddin, qui avait, par le passé, collaboré avec Olga Malinkiewicz. Leur efficacité étant passée de 3,8 % à 23,7 % », un taux comparable à celui des panneaux classiques en silicium.
The ultimate script that provides firmware packages for most Xiaomi devices.
Alors pour que ca marche chez moi j'ai du :
Voila le jeu a du son Oo
Le langage de modélisation ArchiMate fournit une représentation uniforme des diagrammes décrivant les architectures d'entreprise.
Il comprend des concepts permettant de spécifier des architectures interdépendantes, des points de vue spécifiques pour des parties prenantes sélectionnées et des mécanismes de personnalisation de langage.
Il propose une approche architecturale intégrée qui décrit et visualise différents domaines d’architecture et leurs relations et dépendances sous-jacentes.
Son framework fournit un mécanisme de structuration pour les domaines, les couches et les aspects de l'architecture.
Bonjour,
Actuellement dans mon pas de calais je souhaite bouger avec ma femme.
aillant fait mes études a tours j'aimais bien la ville.
Y a t-il des tourangeaux qui pourrait me donner un avis "frais" sur la ville ?
Merci !
Really flexible federated social media!
Demand a Larger Room.
Take a Morning Slot.
Bring Friends.
10/20/30 Rule.
Bring No Slides.
Stay Cool … Not.
Make Friends.
Make Enemies.
Structure It.
Intrigue.
Ask Questions.
Don’t Rehearse.
Don’t Be Funny.
Have Fun.
Be Humble.
Don’t Be Shy.
Provoke Questions.
J'en connaissais deja 8/10 mais c'est bon a rappeler, des TRES bons conseils ! vraiment !
le plus dur "prendre du plaisir" apres ca devient super simple
Et aussi Y CROIRE, faire une presentation sur quelques chose que vous n'aimez pas c'est quasi impossible
Pour gérer mes mots de passe, j’utilise l’excellent outil pass du projet password-store. Celui-ci utilise GnuPG pour chiffrer chaque mot de passe. J’ai récemment changé de système d’exploitation (j’y reviendrai probablement en détails dans un prochain article) et je suis tombé sur deux problèmes avec ces deux outils. Comme j’ai mis un certain temps à trouver la cause et la solution à chacun de ces deux problèmes, je les partage ici si cela peut aider quelqu’un. « Pas de clef secrète » Le problème Après avoir migré vers mon nouveau système d’exploitation et après avoir installé password-store, je demande un mot de passe et j’obtiens une erreur inquiétante : $ pass show
The two-phase commit protocol (2PC) has been used in enterprise software systems for over three decades . It has been an an incredibly impa...
Qu’est ce que le principe dit de “Loi de Moore” ? Quand et comment a-t-il été formulé, dans quel contexte sociétal et technologique ? Que voulait montrer l’ingénieur Gordon Moore, alors futur co-fondateur d’Intel ? Que prédisait-il et sur la base de quelles notions ?
Les joies du code, l'instant GIF des développeurs - humour de dev
If you've written some Rust code, you can compile it into WebAssembly! This tutorial takes you through all you need to know to compile a Rust project to wasm and use it in an existing web app.
Le livre de la documentation de Cargo pour Rust
Asynchronisme en rust
Configurer un serveur ?
les 10 premières minutes
Parce que j'ai toujours du mal à m'en souvenir...
Les lignes de la matrice référencent les activités identifiées, et les colonnes les rôles (personnels impliqués par métier). Dans chaque cellule [activité ; rôle] figure la lettre « R », « A », « C » ou « I », où l'acronyme anglais RACI signifie :
R : responsible.
A : accountable (on utilise aussi parfois le terme approver).
C : consulted.
I : informed.
Explications :
Le ou les R (le A peut aussi jouer le rôle de R) réalisent l'action. Il doit y avoir au moins un R pour chaque action. Le A s’organise comme il le souhaite pour sous-traiter au(x) R, mais c'est son problème : si les R ne remplissent pas leurs objectifs (ou n'existent pas), c'est le A qui assume.
Le A est comme son nom l'indique celui qui doit rendre des comptes sur l'avancement de l'action. Il y a toujours un A (et un seul) pour chaque action. « Avoir le A » signifie être totalement responsable d'une action.
Les C sont les entités (personnes, groupes) qui doivent être consultées.
Les I sont les entités qui doivent être informées.
La traduction française peut donc être :
R : réalisateur.
A : approbateur, autorité, ou responsable — certains estiment que la traduction du terme anglais accountable par « autorité » est inexacte car avoir une autorité sur une action n'est pas la même chose qu'être responsable de cette action. Ce glissement sémantique peut causer un défaut de responsabilisation, et entraîner l'affectation du A au chef de projet sur toutes les actions.
C : consulté.
I : informé.Microsoft Azure DevOps Bounty Program
Effectivement il est possible pour chaque type de document de definir la maniere dont git va faire le diff et cela afin de pouvoir "voir" les vrais differences.
bonne idee je la garde de cote.
Mon profil sur le site gerant le TOGAF la formation d'architecture.
Un guide avancé il faut que je regarde.
Sommaire
Installation de LaTeX
Les bases
Divers
Index, glossaire et nomenclature
Bibliographie avec LaTeX
Mathématiques
Environnements graphiques
Utilisation de Texmaker
Autres ressourcesL'architecte doit être le gardien du temple, le référent technique de haut niveau, Il est un vecteur de succès pour l'organisation IT de l'entreprise et est garant de l'intégrité et de la cohérence de son système informatique. Il se doit d'être un vecteur de changement dans le cadre de la rénovation, modernisation et évolution technique du ce système.
Avoir des mots de passe solides, c’est bien (et même indispensable), mais s’en souvenir… c’est dur. On serait tenté de tout enregistré dans son navigateur, avec un mot de passe maître pour stocker les mots de passe de façon chiffrée mais… Firefox par exemple a un système de chiffrement par mot de passe maître tout pourri.
Il existe un paquet de gestionnaire de mot de passe libre. Évacuons tous ceux basé sur KeePass ou ses successeurs : pour utiliser ses mots de passe sur un autre PC ou sur son téléphone, il faut synchroniser le fichier contenant les mots de passe et s’il y a un souci de synchro et que le fichier se retrouve corrompu… paf, pastèque !.
J’ai essayé Passbolt ou encore l’application Passman de Nextcloud mais quand j’utilisais la sécurité maximale qu’ils proposent… mon Firefox plantait (oui, quand on me propose des réglages de parano, je les utilise). Sans compter qu’ils ne proposent pas d’appli Android.
Et puis, j’ai testé Bitwarden. Et c’est pas mal du tout, mais… c’est du C# et ça utilise une base de données SQL Server. Deux trucs Microsoft.
Bon, passant outre mon aversion, j’ai testé. Dans du Docker (quand je vous dis que je suis passé outre mon aversion !). C’était pas mal du tout.
Comment savoir quels sont les nouveaux films et nouvelles séries récemment ajoutées à Netflix, Amazon Prime Video, OCS Go et 15+ autres plateformes de VOD françaises ? Avec JustWatch, c'est très simple ! La Timeline des Nouveautés vous permet de découvrir toutes les dernières sorties films et séries des services de streaming en France.
A comprehensive remap and expansion of Gamepad controls including the ability to link ANY mod hotkey to 1 of up to 20 controller hotkeys/button combos plus much more
Top est une commande Posix permettant de chopper tout un tas d'infos sur les processus qui tournent sur votre machine. Son plus célèbre concurrent est htop qui permet d'avoir les mêmes infos et mêmes quelques autres en plus d'une jolie ptite interface.
ACBM Édito : Reprenez le contrôle de ce que vous lisez (ou ne lisez pas) !
Build Docker Images for ARM hosts on Intel
docker run -v /usr/bin/qemu-arm-static:/usr/bin/qemu-arm-static --rm -ti armhf/alpine
enjoy !
(pratique pour faire de la cross compilation, en fait pas vraiment c'est plus de l'emulation pour compiler...)
Scratch 3 sur Raspberry Pi ?
En parallèle, la fondation Raspberry Pi vient d'annoncer qu'elle travaille sur une version hors ligne exécutable avec un Raspberry Pi. La création de cette version devra passer par deux étapes : d'abord soutenir le MIT pour optimiser son langage de programmation visuelle afin de s'assurer qu'il offre les meilleures performances possibles, puis par la suite créer cette version hors ligne de Scratch 3 ainsi que de nouvelles extensions GPIO et Sense HAT.
Cool si Scratch est disponible hors ligne bientôt !!
technique pour créer son levain liquide ou ferme.
A guide to finding the right day job, protecting your time, and building creative habits by Jeffrey Silverstein. Illustrated by Sunny Eckerle.
Dino is a modern open-source chat client for the desktop. It focuses on providing a clean and reliable Jabber/XMPP experience while having your privacy in mind.
Movim - Decentralized social platform. Contribute to movim/movim development by creating an account on GitHub.
Web-based XMPP/Jabber chat client written in JavaScript - conversejs/converse.js
Pourquoi y a-t-il des gauchers ? — Science étonnante #51
Shell script to set up a Raspberry Pi/Odroid/PC with RetroArch emulator and various cores - RetroPie/RetroPie-Setup
i had the same thing like Bedar and did what mitu said: Config -> Retropie Setup -> Configuration / tools -> autostart -> Start Emulation Station at boot and it autologin after a reboot again. thx you guys for the help.
Un mod half life 2 qui change la donne
The Feynman Technique is a mental model that helps you learn faster and increases retention. Read this article to supercharge your learning.
Lors de mon dernier article sur Firefox, j'ai évoqué que l'environnement Webextensions avait bien évolué, et que les développeurs s'étaient eux aussi sortis les doigts du cul pour remettre leurs
Dans ce cours, vous apprendrez à bien programmer en Python. On vous mènera des premiers pas dans le langage à l'étude des concepts les plus évolués, au travers de nombreuses vidéos courtes, de notebooks, et d'exercices auto-évalués.
WINESERVER="/home/prozacgod/.steam/steam/steamapps/common/Proton 3.7 Beta/dist/bin/wineserver" WINEPREFIX="/home/prozacgod/.steam/steam/steamapps/compatdata/271590/pfx" ./winetricks
install irc server on alpine linux
Hi everybody :) Can you make a module for 1fichier.com hoster ? It's a very good hoster, simple and good speed (no captacha, direct download we have no timer just 15 minutes between download...
Pour 6 personnes
Mangue(s) : 1000 g
Sucre en poudre : 100 g
Citron(s) jaune(s) : 1 pièce(s)
Éplucher la mangue et la couper en petits morceaux. Presser le citron puis filtrer le jus.
Mettre les morceaux de mangue, le jus de citron et le sucre dans un blender, puis mixer jusqu'à obtenir une texture homogène. Filtrer alors le tout dans un chinois fin.
Réserver ensuite la purée au frais ou au congélateur si elle n'est pas utilisée tout de suite.