Aller au contenu
Korben, roi d’internet, logo bébé avec des lunettes en mode thug life

Tu cherches une plateforme fiable pour te mettre aux cryptomonnaies ?
Viens découvrir LiteBit qui propose de très bons tarifs sur les cryptos (lien partenaire)

Peux être être vous tombé sur ce projet incroyable baptisé SectorC ?

C’est un compilateur C écrit en assembleur x86-16 qui tient dans le secteur d’amorçage de 512 octets d’une machine x86. Si vous pensez que c’est déjà assez impressionnant, attendez d’entendre toutes les fonctionnalités dont il dispose !

Il prend en charge un sous-ensemble de C suffisamment grand pour écrire des programmes vraiment intéressants (Variables globales, fonctions, instructions if et while, de nombreux opérateurs, les pointeurs, commentaires, etc.), en plus d’être probablement le plus petit compilateur C jamais écrit.

Encodé en base64, voici ce que ça donne :

6gUAwAdoADAfaAAgBzH/6DABPfQYdQXoJQHr8+gjAVOJP+gSALDDqluB+9lQdeAG/zdoAEAfy+gI
AegFAYnYg/hNdFuE9nQNsOiqiwcp+IPoAqvr4j3/FXUG6OUAquvXPVgYdQXoJgDrGj0C2nUGV+gb
AOsF6CgA68Ow6apYKfiD6AKrifgp8CaJRP7rrOg4ALiFwKu4D4Srq1fonP9ewz2N/HUV6JoA6BkA
ieu4iQRQuIs26IAAWKvD6AcAieu4iQbrc4nd6HkA6HYA6DgAHg4fvq8Bra052HQGhcB19h/DrVCw
UKroWQDoGwC4WZGrW4D/wHUMuDnIq7i4AKu4AA+ridirH8M9jfx1COgzALiLBOucg/j4dQXorf/r
JIP49nUI6BwAuI0G6wyE0nQFsLiq6wa4iwarAduJ2KvrA+gAAOhLADwgfvkx2zHJPDkPnsI8IH4S
weEIiMFr2wqD6DABw+gqAOvqicg9Ly90Dj0qL3QSPSkoD5TGidjD6BAAPAp1+eu86Ln/g/jDdfjr
slIx9osEMQQ8O3QUuAACMdLNFIDkgHX0PDt1BIkEMcBaw/v/A8H9/yvB+v/34fb/I8FMAAvBLgAz
wYQA0+CaANP4jwCUwHf/lcAMAJzADgCfwIUAnsCZAJ3AAAAAAAAAAAAAAAAAAAAAAAAAAAAAVao=

Xorvoid, l’auteur de ce projet a été inspiré par les recherches de Justine Tunney et Tom Murphy. Ainsi, pour réduire la taille du tokenizer, l’auteur a proposé une version de C appelée « Barely C Programming Language » qui utilise des « méga-tokens » pour minimiser le nombre de tokens nécessaires.

Voici la « grammaire » de son C maison :

program     = (var_decl | func_decl)+
var_decl    = "int" identifier ";"
func_decl   = "void" func_name "{" statement* "}"
func_name   = <identifier that ends in "()" with no space>
statement   = "if(" expr "){" statement* "}"
            | "while(" expr "){" statement* "}"
            | "asm" integer ";"
            | func_name ";"
            | assign_expr ";"
assign_expr = deref? identifier "=" expr
deref       = "*(int*)"
expr        = unary (op unary)?
unary       = deref identifier
            | "&" identifier
            | "(" expr ")"
            | indentifier
            | integer
op          = "+" | "-" | "&" | "|" | "^" | "<<" | ">>"
            | "==" | "!=" | "<" | ">" | "<=" | ">="

De plus, la fonction atoi() est utilisée comme une fonction de hachage pour les littéraux entiers, ce qui permet de réduire encore plus le nombre de tokens.

Pour réussir à minimiser la taille de son code en langage assembleur, Xorvoid a expérimenté différentes méthodes, comme celle du « byte-threaded-code », qui consiste à aligner les adresses sur une limite de 2 octets pour utiliser un seul octet pour l’adressage. Finalement, le créateur de SectorC a réussi à minimiser son code autant que possible en utilisant différentes petites astuces et en revenant sans cesse à une version encore plus simple de son code.

Au final, ce petit projet nous démontre que même avec des contraintes importantes, il est possible d’obtenir des résultats impressionnants. Ainsi, SectorC pourrait être utile pour ceux qui souhaitent explorer les fonctions bios x86-16 et ce modèle de machine sans avoir à apprendre beaucoup d’assembleur au préalable. Ce genre de défi impressionnant est souvent l’occasion de trouver des solutions plutôt créatives et assez innovantes. Ça scotche les amateurs de technique comme moi en tout cas.

Et bien sûr, si vous êtes curieux et voulez en apprendre davantage sur ce projet surprenant, je vous invite à découvrir SectorC ici : https://xorvoid.com/sectorc.html

Source


Si vous aimez Chat GPT, que vous ayez pris l’abonnement payant ou non, vous devez parfois être frustré par le site web qui n’est pas forcement super pratique à utiliser. C’est là qu’entre en scène Chatterbox pour macOS qui permet d’interagir facilement avec ChatGPT au travers d’une application native.

L’idée c’est d’avoir ChatGPT à portée de main d’un simple raccourci clavier comme vous le feriez avec Spotlight. Et surtout de pouvoir prendre des captures écran de l’ensemble d’une conversation ou simplement d’un message précis.

Des accès rapides pour créer une nouvelle conversation ou relancer une réponse qui ne vous convient pas sont également disponibles.

Ça ne fait pas grand-chose de plus pour le moment, mais c’est quand même bien pratique. Je vous invite à l’essayer en cliquant ici.


Comme vous le savez, Windows XP était un système d’exploitation que beaucoup de gens adoraient, et ce même des années après son abandon par Microsoft. Nous sommes nombreux à nous remémorer l’époque dorée d’XP quand c’était trop cool ! Eh bien, aujourd’hui, je vais vous parler d’un moyen d’activer Windows XP même sans connexion Internet.

C’est devenu possible grâce à une série d’événements, dont la découverte d’un document datant de 2001, qui décrivait le processus d’activation de Windows XP, ainsi que la publication d’un générateur de clés open-source sorti en 2019. Initialement, ce générateur de clés nécessitait un serveur externe pour la validation et l’installation, mais récemment, quelqu’un a partagé un exécutable Windows qui génère les codes d’identification qui vont bien pour activer Windows XP entièrement hors ligne.

Pendant longtemps, personne n’a été en mesure de cracker réellement ce verrou de Microsoft. Mais aujourd’hui, grâce aux efforts des développeurs et chercheurs, non seulement la serrure a été ouverte, mais une solution a également été trouvée pour activer Windows XP hors ligne.

Alors, comment utiliser cette technique pour activer Windows XP sans Internet ? C’est simple !

D’abord utilisez ce programme pour générer une clé, et utilisez cette clé lors de l’installation.

Puis, après l’installation, vous serez invité à activer Windows. Sélectionnez la méthode d’activation par téléphone, puis lancez xp_activate32.exe et entrez l’ID d’installation que l’assistant d’activation vous a donné.

Enfin, cliquez sur « Suivant » et voilà ! C’est plié !

Bien que cette méthode puisse être pratique pour certains nostalgiques de Windows XP, il est important de noter que l’installation d’un système d’exploitation aussi ancien sur un appareil connecté à Internet est fortement déconseillée, puisqu’il présente des risques de sécurité importants puisqu’il n’est plus pris en charge ou mis à jour par Microsoft.

Bref, pensez à utiliser une machine virtuelle pour faire fonctionner Windows XP sur votre ordinateur actuel, ce qui vous permettra de rester en sécurité.

Pour ceux qui sont curieux et qui souhaitent en savoir plus sur cette méthode d’activation, vous pouvez en découvrir davantage sur le blog tinyapps.

À découvrir ici

Source


Vous vous souvenez de mon article sur Whisper, cet outil d’IA mis au point par OpenAI ? Pour rappel, ce logiciel est capable de retranscrire en texte n’importe quel fichier audio ou vidéo.

C’est extrêmement pratique pour faire de la retranscription ou des sous-titres de qualité sans se prendre la tête. Et cela dans tout un tas de langues. Mais ce n’était pas forcement facile à prendre en main puisque ça passait par un colab avec des lignes de Python.

Heureusement, depuis les choses ont bien évolué et on a maintenant un logiciel fini très facile à utiliser. Ce logiciel c’est Buzz et ça fonctionne sous macOS, Linux et Windows.

Parmi ses atouts, on retrouve la transcription et la traduction en temps réel à partir du microphone de l’ordinateur, ce qui va faciliter quand même vachement le travail de ceux qui ont besoin de transcrire une réunion, une interview ou même des conversations informelles (un coup de fil par exemple).

L’application permet également d’importer des fichiers audio et vidéo et d’exporter les transcriptions au format CSV, SRT, TXT et VTT, permettant ainsi une compatibilité avec de nombreux logiciels et services comme Youtube.

Et comme si ça ne suffisait pas, Buzz prend en charge les modèles hors ligne tel que Whisper.cpp ou online comme l’API Whisper d’OpenAI. L’application propose également un moteur de recherche pour farfouiller dans les transcriptions audio et surtout un éditeur de texte intégré afin de faciliter le travail de révision des transcriptions.

Je l’ai testé à plusieurs reprises et ça fonctionne vraiment super bien, si vous prenez un modèle Small ou supérieur.

A télécharger ici.


Vous êtes-vous déjà demandé si vous pouviez disposer de votre propre service de partage de fichiers à la WeTransfer, en contrôlant entièrement vos données ?

Non, et bien je vais vous présenter un outil libre et open source nommé Pingvin Share qui fait exactement cela.

Pingvin Share est un service de partage de fichiers auto-hébergé, en d’autres termes, un WeTransfer maison. Il a été développé par l’utilisateur Stonith404 et l’avantage de cet outil est qu’il peut être déployé facilement via Docker, ce qui signifie que vous pouvez le faire fonctionner sur une multitude de systèmes, y compris certains modèles de NAS Synology.

Et abonnez-vous à ma chaine Youtube
parce que vous passez à côté de pleins de trucs
que je ne partage pas forcement sur mon site !

Comment installer Pingvin Share ?

Pour commencer, téléchargez le dépôt Pingvin Share depuis GitHub et installez-le avec Docker. Une fois que vous avez téléchargé le dépôt, vous lancez le Docker avec la commande docker compose up -d. Après l’installation, accédez à l’interface de l’application via votre navigateur en tapant http://localhost:3000.

Configuration de Pingvin Share

L’une des particularités de Pingvin Share est qu’il est hautement configurable. Une fois que vous vous êtes créé un compte, vous pouvez personnaliser l’apparence de votre service, configurer l’envoi d’e-mails, définir les limites de taille des fichiers et bien plus encore.

Si vous prévoyez de l’héberger sur une machine qui vous permet d’avoir une URL, vous pouvez spécifier cette URL dans les paramètres. Vous pouvez également définir une image personnalisée pour votre service, comme votre avatar.

Les fichiers que vous partagez peuvent être envoyés par e-mail. Il n’est pas seulement question de récupérer une URL et de la partager. Vous pouvez activer l’envoi d’e-mails et personnaliser tous les e-mails qui seront envoyés depuis votre service.

Stockage des fichiers

Les fichiers que vous téléchargez sur votre Pingvin Share sont stockés dans l’instance Docker. Dans le Docker Compose, vous verrez un répertoire data qui pointe vers /opt/app/backend/data. C’est là que vos fichiers seront stockés.

Collecter des fichiers avec Reverse Share

Pingvin Share offre également une fonctionnalité appelée Reverse Share. Il s’agit en gros d’une boîte de dépôt qui permet aux gens de déposer des fichiers sans avoir besoin de compte. Vous pouvez alors voir tout ce qui a été partagé dans ce partage inversé.

Mise à jour de Pingvin Share

Pingvin Share peut également être mis à jour via Docker. Vous pouvez utiliser les commandes docker compose pull et docker compose up -d pour récupérer les nouvelles versions et redémarrer le service.

En résumé

Pingvin Share est un excellent outil pour ceux qui veulent contrôler totalement leurs données de partage de fichiers. Il est libre, open source et facile à installer et à configurer. Il offre une multitude de fonctionnalités qui en font une excellente alternative aux géants du partage de fichiers. Alors, pourquoi ne pas essayer de créer votre propre WeTransfer maison ? Vous verrez c’est facile et j’explique tout dans ma vidéo

Pour en savoir plus, vous pouvez consulter la documentation complète sur le dépôt GitHub de Pingvin Share.

N’attendez plus et foncez donner vie à votre propre service de partage de fichiers !