Skip to content

Instantly share code, notes, and snippets.

View DamienCassou's full-sized avatar
🙂
happy

Damien Cassou DamienCassou

🙂
happy
  • finsit @ Wolters Kluwer
  • Brest, France
View GitHub Profile
@DamienCassou
DamienCassou / borgmatic.patch
Last active March 20, 2023 18:48
borgmatic.nix patch to simplify merge
From ae12a245b8800e5896657f868e2eebac0449ca26 Mon Sep 17 00:00:00 2001
From: Damien Cassou <damien@cassou.me>
Date: Mon, 20 Mar 2023 19:43:49 +0100
Subject: [PATCH] WIP
---
modules/programs/borgmatic.nix | 20 +++++++++-----------
1 file changed, 9 insertions(+), 11 deletions(-)
diff --git a/modules/programs/borgmatic.nix b/modules/programs/borgmatic.nix
{
"nodes": {
"devenv": {
"locked": {
"dir": "src/modules",
"lastModified": 1675567441,
"narHash": "sha256-SGXaZkv/7MTt+iplexU2ZU2yY10G5lFsjGu4Q5j1p44=",
"owner": "cachix",
"repo": "devenv",
"rev": "871faa3fee0f4550074212b3db180e62fa699ab4",
ledger balance --depth 1 ^Equity:Budget ^Budget \
| tail -n 1 \
| grep --quiet "^ *0 *$"
@DamienCassou
DamienCassou / screencasting.el
Created October 14, 2019 07:50
Record audio, video and keystrokes simulatenously
;;; screencasting.el --- Tooling for screencasting -*- lexical-binding: t; -*-
;; Copyright (C) 2019 Damien Cassou
;; Author: Damien Cassou <damien@cassou.me>
;; Keywords:
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
@DamienCassou
DamienCassou / auto-encrypt-mail.el
Last active March 27, 2018 13:01
Automatically encrypt Emacs outgoing emails if there is a public key for every recipient
(defun my/can-encrypt-message-p ()
"Return non-nil if current message can be encrypted.
I.e., the keyring has a public key for each recipient."
(let ((recipients (seq-map #'cadr ; only take email address, not recipient name
(seq-mapcat (lambda (header)
(let ((header-value (message-fetch-field header)))
(and
header-value
(mail-extract-address-components header-value t))))
'("To" "CC" "BCC"))))
@DamienCassou
DamienCassou / magit-jira.el
Created December 20, 2016 08:53
magit branch name from jira
(defvar ftgp-jira-summary-url
"https://foretagsplatsen.atlassian.net/rest/api/2/issue/%s?fields=summary"
"Format string to get the summary of a ticket.")
(defcustom ftgp-atlassian-pass-entry "ftgp/foretagsplatsen.atlassian.net"
"Password-store entry where to find FTGP Atlassian credentials.
Must contain both the password and username such that
`auth-pass-get' will find them."
:group 'ftgp
:type 'string)
@DamienCassou
DamienCassou / configuration.nix
Created May 29, 2016 15:52
systemd user service for Emacs daemon defined in NixOS
{
systemd.user.services.emacs = {
description = "Emacs: the extensible, self-documenting text editor";
serviceConfig = {
Type = "forking";
# ExecStart = "${bigEmacs}/bin/emacs --daemon";
# Running Emacs this way ensures environment variable are accessible:
ExecStart = "${pkgs.bash}/bin/bash -c 'source ${config.system.build.setEnvironment}; exec ${bigEmacs}/bin/emacs --daemon'";
ExecStop = "${bigEmacs}/bin/emacsclient --eval (kill-emacs)";
#!/usr/bin/env sh
# This script will setup Evm (Emacs Version Manager) and Cask on
# Travis to use for Emacs Lisp testing.
#
# In .travis.yml, add this:
#
# - curl -fsSkL https://gist.github.com/DamienCassou/f7d324c72cad63de484d/raw > travis.sh && source ./travis.sh
#
# Emacs 24.5 is installed in the above script because Cask requires
function nixos-cleanup-safe () {
df -h /
nix-collect-garbage
df -h /
sudo nix-store --optimise
df -h /
}
function nixos-garbage-add-root () {
sudo ln -s $1 /nix/var/nix/gcroots/
@DamienCassou
DamienCassou / configuration.nix
Created October 22, 2014 13:41
configuration.nix file for NixOS on my macbook pro
{ config, pkgs, ... }:
let
hostname = "luz3";
in {
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
# I use VirtualBox to connect to Windows and Linux guests