Use a proxy with Waydroid

Waydroid is a project that allows you to run Android applications on a Linux distribution. It’s a fork of the project Anbox-Android-in-a-Box. Android applications are run in a container and do not have the overhead of emulators.

This article will explain how to use a proxy with Waydroid and intercept the traffic using a proxy. This can be useful to reverse engineer an API or for security testing.

Read more...

Oreille

A small week end project: Oreille is a wrapper on OpenAPI Whisper API. It provides support for long audio files.

OpenAPI Whisper support only files that are less than 25 MB. Oreille will break the audio file into chunks of 25 MB’s or less. https://platform.openai.com/docs/guides/speech-to-text/longer-inputs

Oreille will also compute the correct timing of the subtitle when merging the output of Whisper. So once you export the subtitle the timestamp of the subtitle will be right.

You can open and save WAV files with pure python. For opening and saving non-wav files – like mp3 – you’ll need ffmpeg or libav.

View project on Github

JSONApiDoc

JSON Api Doc une petite bibliothèque Open Source que j’ai publiée. En manipulant des API en JSON API une chose m’a beaucoup gêné. L’utilisation des included pour éviter de dupliquer les données rend la lecture très difficile par un humain. Cette bibliothèque utilisable dans un programme Python ou en cli permet tout simplement de résoudre les included et de renvoyer un objet plus simple à lire et à manipuler par un humain.

Read more...

Detect Python code duplicate

You can detect Python code duplicate with Pylint pylint --disable=all --enable=duplicate-code src/ No config file found, using default configuration ************* Module gns3server.compute.dynamips.nodes.ethernet_switch R: 1, 0: Similar lines in 2 files ==gns3server.compute.dynamips.nodes.ethernet_hub:101 ==gns3server.compute.dynamips.nodes.ethernet_switch:136 @property def mappings(self): """ Returns port mappings :returns: mappings list """ return self._mappings @asyncio.coroutine def delete(self): return (yield from self.close()) @asyncio.coroutine def close(self): """ Deletes this hub. """ (duplicate-code) R: 1, 0: Similar lines in 2 files ==gns3server.compute.dynamips.nodes.ethernet_hub:66 ==gns3server.

Read more...

Un système d'exploitation souverain mais pourquoi?

La discussion sur le système d’exploitation souverain est devenue une blague sur internet tellement cette proposition parait absurde. Mais ce qui n’était au début qu’un amendement a était adopté par les députés. La blague pourrait au final coûter au citoyen. Même si elle part probablement d’un bon sentiment. C’est quoi un système d’exploitation? Le système d’exploitation c’est grosso modo la couche logicielle entre le matériel et vos applications. C’est donc indispensable et incontournable.

Read more...