Its no secret that I am a socialist, I hope that with my posts and replies that others may follow. If you like what I have to say I would recommend checking Cowbee’s comprehensive list credit to comrade @Cowbee@lemmy.ml for they’re work

  • 5 Posts
  • 55 Comments
Joined 8 months ago
cake
Cake day: March 31st, 2024

help-circle

  • A few, 7yo appendicitis which ruptured in surgery. 15yo Fell from 3 story high scaffolding and landed on my back. 11yo an adult repeatedly slammed my head onto a wooden floor: maybe not a near death but I had thought that that was the end. 18yo big hill at night friends figgered we would ghost it, brakes off keys out of the ignition, find break don’t work and scrabbling to put keys in ignition… I was drunk so I don’t remember much else but we all survived car had a dent on the bumper.













  • this sounds very involved initially but hands off after the fact.

    Script
    #!/bin/bash
    
    cd ~/ || exit
    
    LATEST_KERNEL=$(curl -s https://www.kernel.org | grep -Po 'linux-\d+\.\d+\.\d+\.tar\.xz' | head -1)
    echo "Latest Kernel: $LATEST_KERNEL"
    
    KERNEL_URL="https://cdn.kernel.org/pub/linux/kernel/v6.x/$LATEST_KERNEL"
    echo "Kernel URL: $KERNEL_URL"
    
    DIR_NAME=$(echo $LATEST_KERNEL | sed 's/\.tar\.xz//')
    mkdir -p ./$DIR_NAME
    
    wget -O ./$DIR_NAME/$LATEST_KERNEL "$KERNEL_URL" || exit
    
    tar -xf ./$DIR_NAME/$LATEST_KERNEL -C ./$DIR_NAME || exit
    
    EXTRACTED_DIR=$(tar -tf ./$DIR_NAME/$LATEST_KERNEL | head -1 | cut -f1 -d"/")
    
    cd ./$DIR_NAME/$EXTRACTED_DIR || exit
    
    zcat /proc/config.gz > .config
    echo "Kernel config copied."
    
    if [ -f "drivers/gpu/drm/amd/display/dc/link/link_dpms.c" ] && [ -f "drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_training.c" ]; then
        echo "Files found, proceeding with modifications..."
        
        sed -i 's/#define LINK_TRAINING_RETRY_DELAY 50 \/\* ms \*\//#include <linux\/module.h>\nstatic int link_training_retry_delay = 50;\nmodule_param(link_training_retry_delay, int, 0644);\nMODULE_PARM_DESC(link_training_retry_delay, "Delay between link training retries (ms)");\n#define LINK_TRAINING_RETRY_DELAY link_training_retry_delay/' drivers/gpu/drm/amd/display/dc/link/protocols/link_dp_training.c
        
        sed -i 's/#define LINK_TRAINING_ATTEMPTS 4/#include <linux\/module.h>\nstatic int link_training_attempts = 4;\nmodule_param(link_training_attempts, int, 0644);\nMODULE_PARM_DESC(link_training_attempts, "Number of link training attempts");\n#define LINK_TRAINING_ATTEMPTS link_training_attempts/' drivers/gpu/drm/amd/display/dc/link/link_dpms.c
        
    else
        echo "One or both files not found in the kernel source directory."
    fi
    
    echo "Kernel modifications complete."
    
    make olddefconfig || exit
    #make || exit
    
    echo "Compiling the kernel..."
    make -j16 || exit
    
    echo "Building modules..."
    sudo make modules_install || exit   
    
    echo "Installing the kernel..."
    sudo make install || exit   
    
    echo "Backing up existing kernel files..."
    sudo cp /boot/vmlinuz-linux /boot/vmlinuz-linux.bak
    sudo cp /boot/initramfs-linux.img /boot/initramfs-linux.img.bak
    
    echo "Moving new kernel files to /boot..."
    sudo cp ./arch/x86/boot/bzImage /boot/vmlinuz-fix
    sudo mkinitcpio -k $(make kernelrelease) -c /etc/mkinitcpio.conf -g /boot/initramfs-fix.img
    
    if [ -f /boot/vmlinuz-fix ] && [ -f /boot/initramfs-fix.img ]; then
        echo "Kernel and initramfs moved to /boot successfully."
    else
        echo "Failed to move kernel or initramfs files to /boot."
        exit 1
    fi
    
    echo "Kernel compilation, installation, and file replacement completed successfully."