Skip to content

Instantly share code, notes, and snippets.

@JPvRiel
JPvRiel / linux_memory_control_to_avoid_swap_thrashing.md
Created November 7, 2016 22:29
Notes on linux memory management options to prioritize and control memory access using older ulimits, newer cgroups and overcommit policy settings. Mostly as an attempt to keep a desktop environment responsive and avoid swap thrashing under high memory pressure.

Overview

Some notes about:

  • Explaining why current day Linux memory swap thrashing still happens (as of 2016).
  • Mitigating "stop the world" type thrashing issues on a Linux workstation when it's under high memory pressure and where responsiveness is more important than process completion.
  • Prioritizing and limiting memory use.
  • Older ulimit versus newer CGroup options.

These notes assume some basic background knowledge about memory management, ulimits and cgroups.

@mattiaslundberg
mattiaslundberg / Ansible Let's Encrypt Nginx setup
Last active May 14, 2025 21:35
Let's Encrypt Nginx setup with Ansible
Ansible playbook to setup HTTPS using Let's encrypt on nginx.
The Ansible playbook installs everything needed to serve static files from a nginx server over HTTPS.
The server pass A rating on [SSL Labs](https://www.ssllabs.com/).
To use:
1. Install [Ansible](https://www.ansible.com/)
2. Setup an Ubuntu 16.04 server accessible over ssh
3. Create `/etc/ansible/hosts` according to template below and change example.com to your domain
4. Copy the rest of the files to an empty directory (`playbook.yml` in the root of that folder and the rest in the `templates` subfolder)
@silviucc
silviucc / how_to_build_kernel_on_Ubuntu.txt
Last active May 26, 2021 07:15
Easy way to build a mainline kernel on Ubuntu
Compiling a Linux kernel on Ubuntu
----------------------------------
This should be useful in the event that the user wants to investigate whether a newer kernel allows
certain peripherals to work better (or at all) or some other problems they might encounter while using
the kernel officially provided by Canonical.
As an example, I use the 4.1.5 release from kernel.org.
1) Make sure you have the build environment set up first:
@pudquick
pudquick / framework_constants_via_ctypes.py
Last active September 7, 2022 11:06
Loading a NSString/CFStringRef constant directly from an OS X framework using ctypes - but don't do it this way! Do it the other way!
# You should really be using this one instead, SERIOUS
# https://gist.github.com/pudquick/ac8f22326f095ed2690e
from ctypes import Structure, POINTER, CDLL, c_char_p, c_int32, create_string_buffer
from ctypes.util import find_library
# We build an opaque object pointer class type to safely handle data without inspecting it
class OpaqueType(Structure):
pass
@Zulko
Zulko / rapunzel_moviepy.py
Last active May 1, 2023 21:22
Tangled + MoviePy
"""
This creates the following GIF, where the text appears to be "embedded"
in the video and "disappears" behind rapunzel.
http://i.imgur.com/gxEHfLX.gif
"""
from moviepy.editor import *
import numpy as np
import skimage.morphology as skm
@tuxfight3r
tuxfight3r / 01.bash_shortcuts_v2.md
Last active June 20, 2025 00:46
Bash keyboard shortcuts

Bash Shortcuts

visual cheetsheet

Moving

command description
ctrl + a Goto BEGINNING of command line
@Schnouki
Schnouki / popcorntime-vpn.sh
Last active November 12, 2024 00:33
OpenVPN for a single application using network namespaces -- helper scripts
#!/usr/bin/env zsh
# Initialize VPN
sudo vpnns up
sudo vpnns start_vpn
# Popcorn time!
sudo ip netns exec frootvpn sudo -u $USER popcorntime
# Cleanup
@grugq
grugq / gist:03167bed45e774551155
Last active June 17, 2025 15:52
operational pgp - draft

Operational PGP

This is a guide on how to email securely.

There are many guides on how to install and use PGP to encrypt email. This is not one of them. This is a guide on secure communication using email with PGP encryption. If you are not familiar with PGP, please read another guide first. If you are comfortable using PGP to encrypt and decrypt emails, this guide will raise your security to the next level.

@dreamcat4
dreamcat4 / macmini 1,1 to 2,1 EFI firmware update
Last active September 4, 2024 21:12
macmini 1,1 to 2,1 EFI firmware update
Guide & Discussion Thread:
http://forum.netkas.org/index.php?topic=874.0
http://forum.netkas.org/index.php?action=printpage;topic=874.0
For the best guide, use search keyword: chmod. Scrolls down to -->
Post by: Shinso on September 18, 2012, 07:28:35 PM
Post by: Shinso on September 18, 2012, 07:30:19 PM
* First: upgrade cpu to Core2Duo
@atenni
atenni / README.md
Last active May 5, 2025 08:06
How to permalink to a gist's raw file

Problem: When linking to the raw version of a gist, the link changes with each revision.

Solution:

To return the first file from a gist: https://gist.github.com/[gist_user]/[gist_id]/raw/

To get a file from multi–file gist: https://gist.github.com/[gist_user]/[gist_id]/raw/[file_name]