Skip to content

Instantly share code, notes, and snippets.

These are only examples, for a few very common actions. You are expected to write your own rules for the rest. The syntax is regular JavaScript, but see the polkit(8) manpage for the object structure and available API. These examples are for polkit versions 106 and later, with the JS interpreter. They won't work with Debian's polkit v105.

  • If you don't know the action name, run pkaction:

    pkaction | grep cups
    
  • The possible results are YES, AUTH_SELF(_KEEP), AUTH_ADMIN(_KEEP), NO. Returning a result is final. Returning null will continue checking other rules.

  • Put your rules in /etc/polkit-1/rules.d/*.rules. (You can check everything in one giant addRule, or you can have a separate file and separate addRule for each program; it doesn't matter.)

@queeup
queeup / KILL_ALL_PROCESSES_MATCHING_STRING_LINUX.sh
Created August 24, 2023 23:15 — forked from haballan/KILL_ALL_PROCESSES_MATCHING_STRING_LINUX.sh
Shell Script to Kill All Processes having Specific Pattern/String in Their Name or Description
# #############################################################################################################################################
# This script KILLS all linux processes that match specific pattern provided by the user:
# Ver 1.0
# # # #
# Author: Mahmmoud ADEL # # # # ###
# Created: 08-05-23 # # # # #
# Modified:
# #############################################################################################################################################
# Terminate the Script if the OS is not Linux:
@queeup
queeup / mirroring.yml
Created August 24, 2023 23:15 — forked from carlos-a-g-h/mirroring.yml
Download a file and upload as a github release (THIS IS NOT LEGAL)
# WARNING: This is not how you should use a CI/CD plaftform, use privately and at your own risk
name: URL uploader
on:
workflow_dispatch:
inputs:
LINK:
type: string
required: true
FILENAME:
type: string

Abstract

This is a full guide for people who wanted to setup Windows 10/11 VM with QEMU/KVM hypervisor for laptops that configured with hybrid graphics card like Intel/AMD + NVIDIA. This process will take about 1 to 2 hours, depending on your system's performance.

Before we proceed:

  • This guide is exclusively for Fedora because this distro is quite different to set up than other distro such as Arch. I would say Arch is easier to setup than Fedora, but sometimes your prefer Fedora than Arch in terms of its usage & features.
  • This tutorial mostly focus on laptops with NVIDIA Optimus MUXed configuration when dGPU (dedicated GPU) can connect directly to HDMI/DP output. If in doubt, search "VR-Ready laptops", as those are definitely MUXed.
  • For MUXless configuration which the dGPU share display alongside with iGPU (integrated GPU), you may need to extract your system's vBIOS for your card to avoid getting no output from your screen. Refer [here](#blank-screen-output-when-i-passthrough

Using VSCode Flatpak to launch Podman containers for DevContainers with Support for "Container Features" (In SilverBlue)

Setup

Install Visual Studio Code

Install Visual Studio Code and a Podman tool

~ flatpak --user install flathub com.visualstudio.code
@queeup
queeup / skylake-tuning-linux.md
Created September 1, 2023 22:59 — forked from Brainiarc7/skylake-tuning-linux.md
This gist will show you how to tune your Intel-based Skylake, Kabylake and beyond Integrated Graphics Core for performance and reliability through GuC and HuC firmware usage on Linux.

Tuning Intel Skylake and beyond for optimal performance and feature level support on Linux:

Note that on Skylake, Kabylake (and the now cancelled "Broxton") SKUs, functionality such as power saving, GPU scheduling and HDMI audio have been moved onto binary-only firmware, and as such, the GuC and the HuC blobs must be loaded at run-time to access this functionality.

Enabling GuC and HuC on Skylake and above requires a few extra parameters be passed to the kernel before boot.

Instructions provided for both Fedora and Ubuntu (including Debian):

Note that the firmware for these GPUs is often packaged by your distributor, and as such, you can confirm the firmware blob's availability by running:

@queeup
queeup / Freebuds_3_Ubuntu.md
Created January 28, 2024 08:49 — forked from yosoufe/Freebuds_3_Ubuntu.md
Increase the volume of Freebuds 3 on Ubuntu 18.04

Disclaimer

This is documentation for myself in hope of helping others. I do not accept any responsibility. Follow the instruction at your own risk. I tested it with Ubuntu 18.04 and it worked. This was also a practice for myself to automate something in Linux.

Solving Freebuds 3 volume problem on Linux

My freebuds 3 had a very low volume on Ubuntu 18.04 until I saw this answer. So running the following command 4 times resolved the issue

dbus-send --print-reply --system --dest=org.bluez /org/bluez/hci0/dev_<mac_address_of_headphones> org.bluez.MediaControl1.VolumeUp

Just note that the mac address should be seperated with _ underscore rather than : which you may find in the bluetooth settings.

@queeup
queeup / arch_linux_installation.md
Created February 1, 2024 21:47 — forked from orhun/arch_linux_installation.md
Notes on my Arch Linux installation: UEFI/Secure Boot + systemd-boot, LUKS-encrypted root (XFS), LUKS-encrypted swap (with hibernate & unlocked via TPM)
@queeup
queeup / configuration.nix
Created March 3, 2024 21:01 — forked from 0atman/configuration.nix
A rebuild script that commits on a successful build
{
config,
pkgs,
options,
...
}: let
hostname = "oatman-pc"; # to alllow per-machine config
in {
networking.hostName = hostname;
- This page is a collection of some of the Advanced queries from the [[Datalog]] channel on the [[Logseq/Discord]] server. #datalog
id:: 61db13f4-75e8-4f87-ad60-3ac3479c5fc8
- ### Resources
- [link: The first message on the datalog channel](https://discord.com/channels/725182569297215569/743139225746145311/743139795865174119)
- [link: Logseq docs - Advanced queries](https://docs.logseq.com/#/page/advanced%20queries)
- [link: Logseq datascript schema](https://gist.github.com/tiensonqin/9a40575827f8f63eec54432443ecb929)
- [link: Logseq frontend db model](https://github.com/logseq/logseq/blob/master/src/main/frontend/db/model.cljs)
- [link: How to Graph Your Data - talk by Paula Gearon](https://youtu.be/tbVwmFBnfo4)
- [link: Domain modelling with datalog - talk by Norbert Wojtowicz](https://youtu.be/oo-7mN9WXTw)
- [link: Athens Research ClojureFam](https://github.com/athensresearch/ClojureFam)