Skip to content

Instantly share code, notes, and snippets.

View PaulCreusy's full-sized avatar

Paul Creusy PaulCreusy

View GitHub Profile
@PaulCreusy
PaulCreusy / AdaptiveIconsBuildozer.md
Last active July 30, 2024 13:04
How to create adaptive icons for Android application with Buildozer and Kivy

How to create adaptive icons for Android application with Buildozer and Kivy

This document aims to explain how to create adaptive icons for Android applications developed with Kivy and compiled with Buildozer.

Context 📖

The configuration file buildozer.spec allows you to specify an icon to use for your application by editing the following portion of the file :

# (str) Icon of the application
@PaulCreusy
PaulCreusy / interpolation.py
Created July 17, 2024 12:38
Interpolation functions
def create_interpolation_function(x_ref: list[float], y_ref: list[float]):
"""
Create an interpolation function with the given points.
Parameters
----------
x_ref : list[float]
X values.
y_ref : list[float]
@PaulCreusy
PaulCreusy / Azure_MFA_and_recover_email.py
Created July 7, 2024 12:16
Python script to authenticate with MFA to Azure and recover the user's email.
import requests
from azure.identity import InteractiveBrowserCredential
# Define your Azure AD client ID
client_id = ...
# Define the Microsoft Graph API scope
scope = ["User.Read"]
# Create the InteractiveBrowserCredential instance

Instructions to create automatic sphinx documentation based on app modules and packages

Install required packages

Install the following packages.

sphinx==7.2.6
sphinx_rtd_theme==2.0.0
@PaulCreusy
PaulCreusy / azure_user_passwd_connection.py
Created June 15, 2024 08:56
Azure connection protocol for username and password
from azure.identity import UsernamePasswordCredential
credential = UsernamePasswordCredential(
client_id="client_id_found_in_azure",
username="email",
password="password",
)
print(credential.get_token("https://graph.microsoft.com/.default"))
def levenshtein(chaine1, chaine2):
n = len(chaine1)
m = len(chaine2)
d = [[0 for j in range(m + 1)] for i in range(n + 1)]
for i in range(0, n + 1):
d[i][0] = i
for j in range(0, m + 1):
d[0][j] = j
for i in range(0, n):
for j in range(0, m):
@PaulCreusy
PaulCreusy / scrollable_frame.py
Last active June 20, 2024 08:32
Scrollable Frame for tkinter
import os
import tkinter as tk
from tkinter import ttk
class ScrollableFrame(ttk.Frame):
def __init__(self, container, *args, **kwargs):
super().__init__(container, *args, **kwargs)
canvas = tk.Canvas(self, takefocus=0, highlightthickness=0)
self.canvas = canvas
scrollbar = ttk.Scrollbar(self, orient="vertical", command=canvas.yview)
@PaulCreusy
PaulCreusy / SelfSignWindowsExecutable.md
Last active August 29, 2024 07:00
How to self-sign a Windows executable created with Pyinstaller

How to self-sign a Windows package created with Pyinstaller

This document aims to explain all the necessary steps to self-sign a Windows executable.

⚠️ Warning
Some of the commands provided need to be completed. The fields to complete are indicated by the characters < and >.

Prerequisites

Please make sure to match all the prerequisite before starting the process of signing the package.