Skip to content

Instantly share code, notes, and snippets.

@xevix
Last active March 5, 2025 00:15
Show Gist options
  • Select an option

  • Save xevix/303108bde98a0ba8d446e5926b47134c to your computer and use it in GitHub Desktop.

Select an option

Save xevix/303108bde98a0ba8d446e5926b47134c to your computer and use it in GitHub Desktop.
#!/bin/bash
## WARNING: no warranty express or implied. Messing with Steam Deck internals without being familiar with a Linux terminal could lead to a broken system. Proceed with caution.
# Set password for `deck` user in order to have password for sudo commands (remember this password)
passwd
# Disable read-only
sudo steamos-readonly disable
# Set up Pacman
sudo pacman-key --init
sudo pacman-key --populate archlinux
sudo pacman-key --populate holo
# Update packages
sudo pacman -Syu
# Install dev packages via Pacman
sudo pacman -Sy base-devel gcc clang make cmake ninja
# The headers might have the version name in them, search online for exact version, hint: check `uname -r`
sudo pacman -Sy linux-headers linux-neptune-65-headers
# Optional: for httpfs extension, e.g. for s3 fetches
sudo pacman -Sy openssl
# DuckDB
git clone https://github.com/duckdb/duckdb.git
cd duckdb
# Takes about 11 minutes
GEN=ninja make
# Add extensions as desired
CORE_EXTENSIONS='httpfs;parquet' GEN=ninja make
# Run
./build/release/duckdb
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment