Skip to content

Instantly share code, notes, and snippets.

View matijs's full-sized avatar
:dependabot:
Scouting turtles

matijs matijs

:dependabot:
Scouting turtles
View GitHub Profile
@matijs
matijs / POST-INSTALL.md
Created August 15, 2026 06:22
Fedora Silverblue post-install

Remove packages from the base system

rpm-ostree override remove gnome-tour firefox firefox-langpacks

Layer packages

rpm-ostree install bat difftastic dnf fzf htop ibm-plex-mono-fonts ripgrep tmux vim

Setting Up Windows 11 Virtual Machine on Fedora Silverblue

This guide walks you through creating a high-performance Windows 11 virtual machine (VM) on Fedora Silverblue using GPU passthrough technology. This setup allows you to run Windows applications that require dedicated graphics performance while keeping your primary system secure with Fedora Silverblue.

What is GPU Passthrough?

GPU passthrough allows your virtual machine to use your dedicated graphics card directly, providing near-native gaming and graphics performance in Windows while running on Linux. This is different from typical virtualization where graphics performance is limited.

Key terms you'll encounter:

@matijs
matijs / rm-runs.sh
Last active March 17, 2025 08:12
Clean up GitHub workflow runs older than 7 days
set -euo pipefail
a_week_ago=$(date --utc --date "7 days ago" +%Y-%m-%dT%H:%M:%S%z)
runs=$(gh run list --limit 1000 --json createdAt,databaseId --jq ".[] | select(.createdAt < \"$a_week_ago\") | .databaseId")
for run in "$runs"; do gh run delete "$run"; done
@matijs
matijs / ipv6guide.md
Created June 18, 2024 05:51 — forked from timothyham/ipv6guide.md
A Short IPv6 Guide for Home IPv4 Admins

A Short IPv6 Guide for Home IPv4 Admins

This guide is for homelab admins who understand IPv4s well but find setting up IPv6 hard or annoying because things work differently. In some ways, managing an IPv6 network can be simpler than IPv4, one just needs to learn some new concepts and discard some old ones.

Let’s begin.

First of all, there are some concepts that one must unlearn from ipv4:

Concept 1

@matijs
matijs / README.md
Last active June 16, 2026 08:05
Solarized Dark profile for macOS Terminal.app

Solarized Dark profile for Terminal.app on macOS High Sierra

Based on the excellent Solarized (Dark) created by Ethan Schoonover. For source code, check the main Solarized repository on GitHub.

Installation

Open and save Solarized Dark.terminal.

Import from the “Profiles” tab in the settings of Terminal.app or just double-click the file after downloading.

@matijs
matijs / keybindings.json
Created November 20, 2017 10:41
Visual Studio Code Keybindings
// Place your key bindings in this file to overwrite the defaults
[
{
"key": "ctrl+shift+k",
"command": "editor.action.deleteLines",
"when": "editorTextFocus && !editorReadonly"
},
{
"key": "shift+cmd+k",
"command": "-editor.action.deleteLines",
@matijs
matijs / settings.json
Created November 20, 2017 10:33
Visual Studio Code User Settings
// Place your settings in this file to overwrite the default settings
{
"editor.fontFamily": "Source Code Pro",
"editor.fontSize": 14,
"editor.renderWhitespace": "all",
"editor.renderIndentGuides": false,
"editor.selectionHighlight": false,
"files.insertFinalNewline": true,
"workbench.colorTheme": "Solarized Dark",
"workbench.iconTheme": "vs-minimal",
(function(doc, body) {
const main = doc.querySelector('main').parentNode.removeChild(doc.querySelector('main'));
while (body.firstChild) body.removeChild(body.firstChild);
body.appendChild(main)
}(document, document.body));
@matijs
matijs / switcher-es5.js
Last active December 8, 2016 22:47
Stylesheet switcher sans ES6 features
(function() {
window.addEventListener( 'load', function() {
var links = Array.prototype.slice.call( document.querySelectorAll( 'link[title]') );
var uniqueTitles = links.reduce( function( titles, link ) {
if ( titles.indexOf( link.title ) === -1 ) {
titles.push( link.title );
}
return titles;
}, []);
var title = window.sessionStorage && window.sessionStorage.getItem( 'title' ) || '';
@matijs
matijs / switcher.js
Created December 8, 2016 15:25
Stylesheet Switcher
(function() {
const links = Array.from( document.querySelectorAll( 'link[title]' ) );
const styles = Array.from( new Set( links.map( link => link.title ) ) );
let title = localStorage.getItem( 'title' );
function selectStyle( title ) {
links.forEach( link => {
link.disabled = true;
link.disabled = link.title !== title;
});