Skip to content

Instantly share code, notes, and snippets.

View chadyred's full-sized avatar
💭
I may be slow to respond.

Florian Cellier chadyred

💭
I may be slow to respond.
  • Sensiolabs
  • Lyon
View GitHub Profile
@chadyred
chadyred / none-linear-tree-node-printer-edges-verticle.php
Created September 12, 2024 10:17
None linear node printer : link could come from anywhere
<?php
class Edge
{
public function __construct(public readonly Verticle $linkedFrom, public readonly Verticle $linkedTo)
{
}
}
class Verticle
@chadyred
chadyred / none-linear-tree-node.php
Last active September 12, 2024 09:20
structural none linear data
<?php
class TreeNode
{
public function __construct(public readonly string $value, public readonly ?TreeNode $left = null, public readonly ?TreeNode $right = null)
{
}
public function makeRightAsTreeNodeThenDo(TreeNode $right, callable $result): void
{
$result(new self($this->value, $this->left, $right));
@chadyred
chadyred / fifo_lifo.php
Last active September 12, 2024 06:28
fifo_lifo.php
<?php
$array = ['H', 'E', 'L', 'L', 'O', 1.1];
$stackLifo = new ArrayIterator(['D', 'L', 'R', 'O', 'W']);
$stackLifoAsArray = $stackLifo->getArrayCopy();
// Add left to the stack (the last added, will be the first out)
array_push($stackLifoAsArray, ' ');
array_push($stackLifoAsArray, 'Hello');
@chadyred
chadyred / linkedlist.php
Last active September 11, 2024 17:59
LinkedList draft
<?php
class Node
{
private ?Node $next;
public function __construct(public readonly string $value)
{
$this->next = null;
@chadyred
chadyred / proxmox-proxy
Created April 3, 2024 09:57 — forked from basoro/proxmox-proxy
Running Proxmox behind a single IP address
I ran into the battle of running all of my VMs and the host node under a single public IP address. Luckily, the host is just pure Debian, and ships with iptables.
What needs to be done is essentially to run all the VMs on a private internal network. Outbound internet access is done via NAT. Inbound access is via port forwarding.
Network configuration
Here’s how it’s done:
Create a virtual interface that serves as the gateway for your VMs:
@chadyred
chadyred / .eslintrc.json
Created November 6, 2023 15:24
First eslint with Allman brace style (brace to next line after class header) used for typescript
{
"root": true,
"extends": [
"eslint:recommended",
"plugin:@typescript-eslint/eslint-recommended",
"plugin:@typescript-eslint/recommended"
],
"parser": "@typescript-eslint/parser",
"parserOptions": { "project": ["./tsconfig.json"] },
"plugins": [
@chadyred
chadyred / backup_kvm.sh
Last active November 26, 2018 13:45
Backup - restore KVM VM with disk and image and XML
#!/bin/bash
#
# Liste des domaines
#
#-----------------------------------------------------------------
if [ "$(groups $USER | grep staff)" == "" ] || [ "$(groups $USER | grep sudo)" == "" ]; then
echo "Vous ne faites pas partie du staff ou vous n'êtes pas sudoer !"
exit 1
fi
#
@chadyred
chadyred / exec_as_uid_set_by_c_script
Last active October 28, 2018 15:37
change-uid-gid-based-one-right-of-file => gcc -m32 -o droit-user droit-user.c
#!/tmp/sh
echo "Content repository of" `whoami`
# ou echo "Contenu du répertoire de" $(whoami)
ls -a /home/user
#!/usr/bin/python3
import abc
from typing import Callable, IO, cast
from east_displayer import Output, OutputStream
from east_typer import StringComputer, String, StringReceiver, ReceiverOfString
class MessageTemplating(metaclass=abc.ABCMeta):
@chadyred
chadyred / east_parse_csv_to_dataframe_with_extract.py
Last active June 19, 2018 08:55
Allow use to get a given column on a CSV with a dataframe
#!/usr/bin/python3
import abc
import sys
import json, base64
from typing import Callable, IO, cast
import requests
import pandas as pd
import attr