Compare commits

...

3 Commits

Author SHA1 Message Date
Alyxia Sother 4230e24e65
[nix] Add back all the packages from the old config 2023-06-09 16:25:55 +02:00
Alyxia Sother 73e9992f7e
[nix] Set up a system for specifying packages 2023-06-09 13:31:06 +02:00
Alyxia Sother 370a8881b5
[nix] Fix a CRITICAL BUG with the zsh config 2023-06-09 13:30:33 +02:00
1 changed files with 126 additions and 7 deletions

View File

@ -1,24 +1,105 @@
# hosts/YourHostName/default.nix
{ pkgs, dotfiles, ... }:
let
packageSets = with pkgs; rec {
system = [
gnutls
gsasl
libtool
patchelf
pcre
pinentry
pkg-config
];
base = [
act
bat
bitwarden-cli
cloudflared
delta
exa
ffmpeg
fzf
gh
# git # already managed by home-manager
git-crypt
gitui
gnupg
jq
kubectl
kubelogin-oidc
mosh
neovim
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
{
imports = [];
# Absolutely proprietary.
nixpkgs.config.allowUnfree = true;
# Make sure the nix daemon always runs
services.nix-daemon.enable = true;
# Installs a version of nix, that dosen't need "experimental-features = nix-command flakes" in /etc/nix/nix.conf
# services.nix-daemon.package = pkgs.nixFlakes;
# 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";
};
# enable the gpg agent by default
programs.gnupg.agent.enable = true;
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
users.alyxia = { pkgs, ... }: {
home = {
packages = packageSets.everything;
};
programs.zsh = {
enable = true;
initExtra = ''
@ -54,10 +135,48 @@
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"
"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"
];
};
}