mirror of
https://github.com/keanuplayz/dotfiles.git
synced 2024-08-15 02:33:12 +00:00
157 lines
2.7 KiB
Nix
157 lines
2.7 KiB
Nix
{ pkgs, dotfiles, ... }:
|
|
|
|
let
|
|
packageSets = with pkgs; rec {
|
|
system = [
|
|
gnutls
|
|
gsasl
|
|
libtool
|
|
patchelf
|
|
pcre
|
|
pkg-config
|
|
];
|
|
|
|
base = [
|
|
act
|
|
bat
|
|
bitwarden-cli
|
|
cloudflared
|
|
delta
|
|
exa
|
|
ffmpeg
|
|
fzf
|
|
gh
|
|
git-crypt
|
|
gitui
|
|
gnupg
|
|
jq
|
|
kubectl
|
|
kubelogin-oidc
|
|
mosh
|
|
nixpkgs-fmt
|
|
ripgrep
|
|
sops
|
|
vim
|
|
wget
|
|
];
|
|
|
|
languages = [
|
|
crystal
|
|
deno
|
|
dotnet-sdk
|
|
go
|
|
jdk
|
|
nil
|
|
nodejs_20
|
|
ruby_3_1
|
|
sbcl
|
|
shards
|
|
zig
|
|
];
|
|
|
|
programs = [
|
|
jetbrains.idea-ultimate
|
|
jetbrains.phpstorm
|
|
jetbrains.rider
|
|
rectangle
|
|
slack
|
|
tailscale
|
|
];
|
|
|
|
multimedia = [
|
|
ffmpeg
|
|
];
|
|
|
|
everything = system ++ base ++ languages ++ programs ++ multimedia;
|
|
};
|
|
|
|
in
|
|
{
|
|
# Absolutely proprietary.
|
|
nixpkgs.config.allowUnfree = true;
|
|
|
|
# Make sure the nix daemon always runs
|
|
services.nix-daemon.enable = true;
|
|
|
|
# enable the gpg agent by default
|
|
programs.gnupg.agent.enable = true;
|
|
|
|
# if you use zsh (the default on new macOS installations),
|
|
# you'll need to enable this so nix-darwin creates a zshrc sourcing needed environment changes
|
|
programs.zsh.enable = true;
|
|
|
|
# Make sure to set the correct values, or everything will break! (in reality,
|
|
# it will just not build)
|
|
users.users.alyxia = {
|
|
name = "alyxia";
|
|
home = "/Users/alyxia";
|
|
};
|
|
|
|
home-manager = {
|
|
useGlobalPkgs = true;
|
|
useUserPackages = true;
|
|
extraSpecialArgs = { inherit dotfiles; };
|
|
users.alyxia = { pkgs, ... }: {
|
|
imports = [ ./zsh.nix ./git.nix ./nvim.nix ];
|
|
|
|
home = {
|
|
packages = packageSets.everything;
|
|
};
|
|
|
|
# DO NOT CHANGE UNLESS YOU ARE ABSOLUTELY SURE ALL STATE AFFECTED BY THIS
|
|
# OPTION IS APPROPRIATELY MIGRATED!!!
|
|
home.stateVersion = "23.05"; # did you read the comment?
|
|
};
|
|
};
|
|
|
|
homebrew = {
|
|
enable = true;
|
|
onActivation = {
|
|
autoUpdate = true;
|
|
cleanup = "zap";
|
|
upgrade = true;
|
|
};
|
|
|
|
taps = [
|
|
"drud/ddev"
|
|
"homebrew/cask"
|
|
"homebrew/cask-versions"
|
|
];
|
|
|
|
# Please do not the brew.
|
|
brews = [
|
|
"composer"
|
|
"croc"
|
|
"ddev"
|
|
"mkcert"
|
|
"pinentry-mac"
|
|
"pkg-config"
|
|
"sdl2"
|
|
];
|
|
|
|
casks = [
|
|
"1password"
|
|
"1password-cli"
|
|
"alt-tab"
|
|
"android-studio"
|
|
"audacity"
|
|
"background-music"
|
|
"db-browser-for-sqlite"
|
|
"discord"
|
|
"discord-ptb"
|
|
"docker"
|
|
"firefox"
|
|
"google-chrome"
|
|
"itch"
|
|
"iterm2"
|
|
"obs"
|
|
"raycast"
|
|
"sequel-ace"
|
|
"shottr"
|
|
"spotify"
|
|
"thunderbird"
|
|
"visual-studio-code"
|
|
];
|
|
};
|
|
}
|