Skip to content

Instantly share code, notes, and snippets.

@Mic92
Mic92 / pushover-warning@.service
Last active February 25, 2023 14:21
Sent pushover warnings when a systemd service failed (useful for backups and systemd timers)
[Unit]
Description=pushover warning
[Service]
Type=oneshot
ExecStart=/usr/bin/curl -s \
--form-string "token=<PUSHOVER_APPLICATION_TOKEN>" \
--form-string "user=<PUSHOVER_USER_TOKEN>" \
--form-string "message=service %I at %H failed" \
https://api.pushover.net/1/messages.json
. 242.3 GiB [##########################] /harshanavkis
. 137.1 GiB [############## ] /paul
98.9 GiB [########## ] /julian
. 84.8 GiB [######### ] /dimitrios
. 61.5 GiB [###### ] /maurice
33.0 GiB [### ] /martin
12.1 GiB [# ] /masa
7.8 GiB [ ] /joerg
5.3 MiB [ ] /okelmann
#!/usr/bin/env bash
set -exuo pipefail
PROGRAM_NAME="$0"
inst() {
local system="" host="" action="install" from="auto" mount=""
local -a nixCopyArgs
while [[ "$#" -gt 0 ]] ; do
case "$1" in
@Mic92
Mic92 / default.nix
Created December 19, 2022 19:45
forgejo
{ lib
, buildGoPackage
, fetchurl
, makeWrapper
, git
, bash
, gzip
, openssh
, pam
, sqliteSupport ? true
{
boot.initrd.availableKernelModules = [
"xhci_pci"
"ahci"
"nvme"
];
disko.devices = import ./raid-config.nix {
raidLevel = 1;
};
[root@nixos:/]# cat etc/fstab
# This is a generated file. Do not edit!
#
# To make changes, edit the fileSystems and swapDevices NixOS options
# in your /etc/nixos/configuration.nix file.
#
# <file system> <mount point> <type> <options> <dump> <pass>
# Filesystems.
/dev/md/root / ext4 defaults 0 1
{ pkgs ? import <nixpkgs> {} }:
with pkgs;
let
clang-wrapped = wrapCCWith {
cc = llvmPackages.clang-unwrapped;
bintools = wrapBintoolsWith {
bintools = pkgs.runCommand "lld" {} ''
mkdir -p $out/bin
@Mic92
Mic92 / mkdir_p.rs
Created December 24, 2017 21:42
emulate mkdir -p in Rust (create directories recursivly and ignore an existing directory)
use std::io;
use std::path::Path;
use std::fs::create_dir_all;
fn mkdir_p<P: AsRef<Path>>(path: &P) -> io::Result<()> {
if let Err(e) = create_dir_all(path) {
if e.kind() != io::ErrorKind::AlreadyExists {
return Err(e)
}
}
@Mic92
Mic92 / botcommands.py
Last active October 22, 2022 00:30
start/stop mpv with python
#!/usr/bin/env python
import socket
import subprocess
import os, sys
MPV_SOCKET = "/tmp/mpvsocket"
CIDER = "cider.hq.c3d2.de"
IS_PYTHON2 = sys.version_info < (3, 0)
if IS_PYTHON2:
with import <nixpkgs> {};
mkShell {
nativeBuildInputs = [
bashInteractive
libosmocore
talloc
];
NIX_CFLAGS_COMPILE = "-ltalloc";
}