Skip to content

Instantly share code, notes, and snippets.

@swarnimarun
Last active March 9, 2026 01:33
Show Gist options
  • Select an option

  • Save swarnimarun/06040d010be3121a789167ab98a2028a to your computer and use it in GitHub Desktop.

Select an option

Save swarnimarun/06040d010be3121a789167ab98a2028a to your computer and use it in GitHub Desktop.
final: prev:
let
codexFlake = builtins.getFlake "github:sadjow/codex-cli-nix";
in
codexFlake.overlays.default final prev
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page, on
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
{ config, lib, pkgs, ... }:
let
pkgsUnstable = import <nixos-unstable> {
config = config.nixpkgs.config;
};
in
{
nix.settings.experimental-features = [ "nix-command" "flakes" ];
imports = [
<nixos-wsl/modules>
];
nixpkgs.overlays = [
(import ./codex-overlay.nix)
];
wsl.enable = true;
wsl.defaultUser = "nixos";
programs.git.enable = true;
programs.fish.enable = true;
programs.gnupg.agent = {
enable = true;
pinentryPackage = pkgs.pinentry-curses;
};
environment.systemPackages =
(with pkgs; [
helix
starship
nixd
# ai tools
codex
# cli tools
ripgrep
eza
jujutsu
jjui
gitui
bottom
gnupg
delta
fd
dust
bat
procs
difftastic
]) ++
(with pkgsUnstable; [
sd
go
gopls
gofumpt
scala
scalafmt
scalafix
kotlin
kotlin-native
odin
zig
rustup
# node / typescript
pnpm
bun
deno
# c & c++
meson
cmake
clang_22
# debuggers
lldb
rr
# elixir
beamMinimal28Packages.elixir
beamMinimal28Packages.elixir-ls
# haxe
# haxe
# ocaml
ocaml
python3
uv
julia
dotnet-sdk_11
dotnet-sdk_10
]);
users.users.nixos.shell = pkgs.fish;
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. It's perfectly fine and recommended to leave
# this value at the release version of the first install of this system.
# Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "25.11"; # Did you read the comment?
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment