Skip to content

Instantly share code, notes, and snippets.

View ejangi's full-sized avatar
😎
Totally addicted to Docker.

James ejangi

😎
Totally addicted to Docker.
View GitHub Profile
@ejangi
ejangi / fix-amd-gpu-sleep-issue.md
Created October 30, 2025 01:43
AMD GPUs often don't like KVMs. To fix this we can turn on the GPU power management using GRUB.

Add the Kernel Parameter

Let's tell the amdgpu driver to disable its runtime power management, which is the component that's failing to resume.

  1. Open a terminal and edit your GRUB config:
sudo nano /etc/default/grub
  1. Find the line GRUB_CMDLINE_LINUX_DEFAULT=.
@ejangi
ejangi / Ubuntu-undo-auto-maximize.sh
Created October 29, 2025 01:40
Stop Ubuntu from auto maximizing windows when opened
gsettings set org.gnome.mutter auto-maximize false
@ejangi
ejangi / yabridgectl-sync-sh
Created July 1, 2025 05:59
When installing windows VSTs on Linux, you need to sync them with linux using Yabridge
yabridgectl sync --prune
# Once you have run `rclone config` to create the iclouddrive connection:
rclone copy iclouddrive: iCloud\ Drive/ --progress --verbose --transfers 1 --ignore-size
# If you have a file of paths to include (prefix "+ ") or exclude (prefix "- ") then you can use:
# rclone copy iclouddrive: iCloud\ Drive/ --progress --verbose --transfers 1 --ignore-size --filter-from ~/.config/rclone/filters.txt
const functions = require('@google-cloud/functions-framework');
const express = require('express');
const app = express();
// GET /myFunction
app.get('/', async (req, res) => {
res.status(200).send('Default route');
});
// GET /myFunction/other
package main
import (
"fmt"
"github.com/pkg/errors"
)
// Custom Error Type
type InvalidInputError struct {
Field string
// If I have an integer between 4 and 5 called avg and I have another integer between 5000 and 100000 called count how could I logarithmically reduce the avg integer as the count gets closer to its maximum value? Can you write me a function to do this in rust?
fn logarithmic_reduce(avg: f64, count: u32, max_count: u32) -> f64 {
// Ensure count does not exceed max_count to prevent negative logarithm values
let clamped_count = count.min(max_count);
// Scale factor to ensure the reduction effect
let scale = (clamped_count as f64) / (max_count as f64);
// Logarithmic reduction effect
use tokio::runtime::Runtime;
async fn async_task() -> i32 {
// Your asynchronous code here
42
}
fn main() {
let rt = Runtime::new().unwrap();
let result = rt.block_on(async_task());
// Define a struct called Person
struct Person {
name: String,
age: u8,
}
impl Person {
// Method to create a new person
fn new(name: &str, age: u8) -> Person {
Person {
:: This batch file does a `cargo build` and if successful, moves the credentials.json file into the build dir.
@ECHO ON
set "DIR=%~dp0"
set "FILE=credentials.json"
echo %DIR%
cargo %1
IF %errorlevel% == 0 (