Featured

Building and Training Your Own SLM

Creating an independent Small Language Model (SLM) is a rewarding project that bridges the gap between deep learning theory and practical, local application. By keeping your model local, you retain full control over your data and system architecture. Below is a structured approach to building and training your own model from the ground up on a local Ubuntu environment. Before you begin, ensure your development environment is optimized for local computation. A robust setup with a capable GPU (such as an NVIDIA RTX series) and sufficient RAM is recommended for efficient training. Use Ubuntu for a stable, customizable development environment. Verify your environment with the following commands:    * Update your package lists:  sudo apt update.    * Install pip:  sudo apt install python3-pip    *I nstall necessary libraries:  pip install torch tiktoken An SLM relies on the quality of its input data. For a personal AI, curated, factual...

Getting a Smooth Steam Big Picture & VR Experience on Ubuntu with NVIDIA

 If you’re anything like me, you love the idea of kicking back on the couch with a controller, but the reality of a laggy, stuttering Steam interface or choppy VR can quickly pull you out of the fun. My setup (Ubuntu 24.04, NVIDIA RTX 4070 Super, and a Ryzen 5 3600) is powerful, but even top-tier hardware needs a little Linux love to shine.

After a lot of tweaking, I’ve found a fantastic combination of tools and settings that transform the experience from clunky to buttery smooth. 

The "new" Steam Big Picture Mode is essentially a web browser, and on Linux, especially with NVIDIA, it can feel surprisingly sluggish. The secret weapon here is Gamescope, a micro-compositor from Valve themselves, designed to provide a highly optimized, lag-free gaming environment.

Step 1: Install Gamescope

Gamescope isn't always in the default Ubuntu repositories, but a trusted PPA makes installation a breeze. Open your terminal (Ctrl+Alt+T) and run these commands:

Bash
sudo add-apt-repository ppa:3v1n0/gamescope -y
sudo apt update
sudo apt install gamescope

Step 2: Grant Gamescope the Power it Needs

Gamescope wants to run at a high priority for maximum smoothness, but Linux security prevents this by default. Give it the necessary permissions with this command:

Bash
sudo setcap 'CAP_SYS_NICE=eip' $(which gamescope)

Step 3: Create Your One-Click Launch Script

To avoid typing long commands every time, let's create a simple script that launches Steam in Gamescope.

  1. Create the script file: nano ~/launch_steam_smooth.sh

  2. Paste this code: (Adjust -W and -H to your monitor's resolution. I use 1080p for better readability from the couch.)

    Bash
    #!/bin/bash
    
    # Ensure NVIDIA is playing nice with Gamescope
    export WLR_NO_HARDWARE_CURSORS=1
    export __GLX_VENDOR_LIBRARY_NAME=nvidia
    
    # Launch Steam in Big Picture mode through Gamescope
    # -W and -H are width/height. Change to 3840 and 2160 if using a 4K display.
    # -f starts it in Fullscreen.
    # -r 60 sets the refresh rate to 60Hz (standard for most TVs/monitors).
    
    gamescope -W 1920 -H 1080 -r 60 -f -- steam -bigpicture
    
  3. Save and exit: Press Ctrl+O, then Enter, then Ctrl+X.

  4. Make it executable: chmod +x ~/launch_steam_smooth.sh

Step 4: Create a Desktop Shortcut (Optional, but Recommended!)

For true convenience, let’s get an icon on your desktop or in your app launcher.

  1. Create the desktop entry file: nano ~/Desktop/SteamSmooth.desktop

  2. Paste this in:

    Ini, TOML
    [Desktop Entry]
    Name=Steam (Smooth Mode)
    Comment=Launch Steam Big Picture with Gamescope
    Exec=/home/jason/launch_steam_smooth.sh
    Icon=steam
    Terminal=false
    Type=Application
    Categories=Game;
    
  3. Save and exit: Ctrl+O, Enter, Ctrl+X.

  4. Allow Launching: Right-click the new SteamSmooth.desktop file on your desktop and select "Allow Launching" (or similar, depending on your desktop environment)


Step 1: Enable NVIDIA DRM Modeset

This is CRITICAL for NVIDIA GPUs on Linux, especially for VR and Gamescope. It essentially tells your kernel to properly initialize your NVIDIA card.

  1. Check if it's already on: sudo cat /sys/module/nvidia_drm/parameters/modeset If this returns Y, you're good! If it returns N or "Permission denied", proceed.

  2. Edit your Grub configuration: sudo nano /etc/default/grub

  3. Find the line: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

  4. Change it to: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvidia-drm.modeset=1"

  5. Save and Exit: Press Ctrl+O, Enter, then Ctrl+X.

  6. Apply changes and reboot: sudo update-grub sudo reboot

Step 2: Use ALVR for Your Quest 2

For Quest users on Linux, ALVR (Air Light VR) is generally superior to the official Steam Link app. It offers more control and better performance, especially with NVIDIA's NVENC encoder.

  1. Download the ALVR Dashboard: Grab the latest .deb or AppImage from the ALVR GitHub Releases page.

  2. Install ALVR: If you downloaded a .deb, you can usually double-click it to install, or use sudo dpkg -i /path/to/alvr.deb. If it's an AppImage, just make it executable (chmod +x alvr-whatever.AppImage) and run it.

  3. Configure ALVR: In the ALVR dashboard's "Video" settings, make sure the encoder is set to NVENC. Experiment with bitrates – I find a sweet spot around 100-150 Mbps, but your network might differ.

Step 3: Opt into the SteamVR Beta

Valve pushes Linux-specific fixes and optimizations to the SteamVR Beta branch long before they hit the stable release.

  1. Open Steam (not in Big Picture Mode for this).

  2. Go to your Library.

  3. Right-click on SteamVR > Properties > Betas.

  4. Select "beta - SteamVR Beta Update" from the dropdown.

Step 4: CPU Power Management

Your Ryzen 5 3600 is capable, but VR can be CPU-intensive. Ensure your processor isn't "parking" cores or running in a low-power state.

  1. Install cpupower-gui: sudo apt install cpupower-gui

  2. Set to Performance: Open cpupower-gui (you can find it in your applications menu) and set your profile to "Performance" before launching VR.

Comments