Skip to content

Instantly share code, notes, and snippets.

View hauleth's full-sized avatar
⌨️
Click! Clack!

Łukasz Jan Niemier hauleth

⌨️
Click! Clack!
View GitHub Profile
defmodule Foo do
defmacro fn_rec(do: body) do
{name, argc, body} =
body
|> Enum.map(fn
{:'->', e1, [[{:when, e2, [{name, _, args}, guard]}], body]} ->
{name, length(args), {:'->', e1, [[{:when, e2, args ++ [guard]}], body]}}
{:'->', e1, [[{name, _, args}], body]} ->
{name, length(args), {:'->', e1, [args, body]}}
defmodule LangustaWeb.Plug.CSP do
import Plug.Conn
@behaviour Plug
@impl true
def init(opts) do
enable? = opts[:enable?] || (&__MODULE__.__true__/1)
force = opts[:force]
report_only = opts[:report_only]
@hauleth
hauleth / hardening.nix
Created September 19, 2025 09:18
Hardening module for NixOS systemd services
{
config,
lib,
...
}: let
inherit (lib) types;
in {
options.systemd.services = lib.mkOption {
type = types.attrsOf (types.submodule ({
name,
Jakiś czas temu szukałem ekipy do remontu w domu no i jak to standardowo bywa popytałem znajomych i zadzwoniłem do najbardziej polecanej ekipy. Tak się złożyło, że miałem wyjazd służbowy i jak wróciłem to chłopaki już od 2 dni pracowali, więc po powrocie poszedłem do nich, żeby sprawdzić jak im idzie.
Wszedłem do salonu, patrze, a tam Bartosiak i Zychowicz stoją na drabinie eskalacyjnej i szlifują ściany. Przywitałem się mówiąc dzień dobry. Zychowicz słysząc to zrobił piwot na drabinie i powiedział Czołem. Trochę się zdziwiłem, że taka śmietanka polskiej sceny geopolitycznej robi u mnie remont, ale może chłopaki mają trudną sytuację kapitałową.
- Jak wam idzie chłopaki? - zapytałem
- Wszystko okaże się, kiedy już opadnie mgła pyłu z angielskiego Fog of Dust - odpowiedział Bartosiak
- no jasne, rozumiem. A jak to się stało, że tacy sławni geopolitycy zajmują się remontami?
- Pisaliśmy o tym w książce - odburknął Bartosiak
- wybaczcie panowie, ale nie czytałem. Możecie coś o tym opowiedzieć?
- No dobrze, ale

Untitled notebook

Mix.install([
  :kino_benchee,
  :peep
])

Last part benchmark

Mix.install([
  {:benchee, "~> 1.0"},
  {:kino_benchee, "~> 0.1.0"},
  {:faker, "~> 0.18"}
])
-module(fizzbuzz).
-export([main/0]).
main() ->
Types = [
{3, "Fizz"},
{5, "Buzz"}
],
io:put_chars(run(100, Types)).
{
"nodes": {
"devenv": {
"inputs": {
"flake-compat": "flake-compat",
"nix": "nix",
"nixpkgs": [
"nixpkgs"
],
"poetry2nix": "poetry2nix",
defmodule Langusta.Site.CleanURL do
defmodule Entry do
defstruct [
:url_pattern,
rules: [],
raw_rules: [],
exceptions: [],
redirections: []
]
{config, pkgs, ...}: let
domain = "hauleth.dev";
mail-domain = "mail.${domain}";
sieve-data = let
stalwart-mail = config.services.stalwart-mail.package;
in pkgs.stdenvNoCC.mkDerivation {
pname = "stalwart-mail-sieve-data";
inherit (stalwart-mail) version src;
dontBuild = true;