Skip to content

Instantly share code, notes, and snippets.

View flyx's full-sized avatar

Felix Krause flyx

View GitHub Profile
@flyx
flyx / main.adb
Created February 23, 2021 20:51
with Ada.Text_IO; use Ada.Text_IO;
with Ada.Containers.Hashed_Maps; use Ada.Containers;
with Ada.Iterator_Interfaces;
procedure Main is
package Tiles is
-- Implementation is completely hidden
type Tile_Type is private;
@flyx
flyx / updateExecutableIcon.py
Created June 21, 2012 13:16
Updates the icon of a windows executable file.
import win32api, win32con
import os, os.path
import struct
import math
def checkPath(path, mode):
if not os.path.exists(path) or not os.path.isfile(path):
raise ValueError("{0} does not exist or isn't a file.".format(path))
if not os.access(path, mode):
raise ValueError("Insufficient permissions: {0}".format(path))
@flyx
flyx / Readme.md
Created February 18, 2023 12:41
Simple plugin to use mermaid.js in a jekyll-asciidoc + just-the-docs setup

Requires a working mermaid setup for just-the-docs.

Place the file below in the _plugins folder of your site. Now in your AsciiDoc files, you can do

[mermaid]
....
graph TD;
    A-->B;
 A-->C;
@flyx
flyx / newcert.expect
Created September 12, 2015 21:13
expect script to create and sign a new OpenSSL cert/key pair
#!/usr/bin/expect -f
#
# creates a new key/cert pair with openssl and signs it with a local CA
#
# expects /etc/ssl/openssl.cnf to provide correct defaults to everything
# except the CN. Easily modifyable to handle more parameters.
#
# usage: ./newcert.key CN capass
#
# * CN: the name of your website, eg example.com
$debDir = "/some/path"
define localPackage ($packageName = $title) {
package {$packageName :
ensure => installed,
provider => dpkg,
source => "${debDir}/${packageName}.deb"
}
}
passdb passwd-file {
args = /home/vmail/%d/passwd
}
passdb pam {
args = session=yes dovecot
}
userdb static {
args = uid=vmail gid=dovecot home=/home/vmail/%d/%u
@flyx
flyx / multimap.ads
Last active December 21, 2015 05:29
with Ada.Containers.Vectors;
with Ada.Containers.Hashed_Maps;
generic
type Key_Type is private;
with package Element_Vectors is new Ada.Containers.Vectors (<>);
with function Hash (Key : Key_Type) return Ada.Containers.Hash_Type;
with function Equivalent_Keys (Left, Right : Key_Type) return Boolean;
package Multimaps is
package Parent is new Ada.Containers.Hashed_Maps
@flyx
flyx / gist:6099315
Last active December 20, 2015 08:19
-- compilation unit 1:
generic
type T is private;
package Unit is
-- ...
end Unit;
-- compilation unit 2:
#include <iostream>
using namespace std;
struct A {
void put() {
cout << "A" << endl;
}
virtual void vPut() {
cout << "A" << endl;
def rec_permutations(prefix, remaining):
if len(remaining) == 1:
yield prefix + remaining
else:
for e in remaining:
new_remaining = remaining[:] # copy
new_remaining.remove(e)
for p in rec_permutations(prefix + [e], new_remaining):
yield p