First commit with MacBook home.nix
This commit is contained in:
commit
d171c086e1
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
home.nix
|
146
macbook-home.nix
Normal file
146
macbook-home.nix
Normal file
|
@ -0,0 +1,146 @@
|
||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
x86pkgs = import <nixpkgs> { config.allowUnsupportedSystem = true; };
|
||||||
|
in
|
||||||
|
{
|
||||||
|
# Let Home Manager install and manage itself.
|
||||||
|
programs.home-manager.enable = true;
|
||||||
|
|
||||||
|
# Home Manager needs a bit of information about you and the
|
||||||
|
# paths it should manage.
|
||||||
|
home.username = "nki";
|
||||||
|
home.homeDirectory = "/Users/nki";
|
||||||
|
|
||||||
|
# Enable the manual so we don't have to load it
|
||||||
|
manual.html.enable = true;
|
||||||
|
|
||||||
|
# Packages that are not in programs section
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
autoconf
|
||||||
|
automake
|
||||||
|
fantasque-sans-mono
|
||||||
|
fd
|
||||||
|
flyway
|
||||||
|
fossil
|
||||||
|
go # to be configured later
|
||||||
|
hugo
|
||||||
|
nnn
|
||||||
|
postgresql
|
||||||
|
rust-analyzer
|
||||||
|
yarn
|
||||||
|
poppler_utils
|
||||||
|
|
||||||
|
x86pkgs.anki-bin
|
||||||
|
];
|
||||||
|
|
||||||
|
# Programs
|
||||||
|
programs = {
|
||||||
|
bat = {
|
||||||
|
enable = true;
|
||||||
|
config = {
|
||||||
|
theme = "GitHub";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
bottom.enable = true;
|
||||||
|
|
||||||
|
command-not-found.enable = true;
|
||||||
|
|
||||||
|
exa = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# later
|
||||||
|
firefox = {};
|
||||||
|
|
||||||
|
fish = {
|
||||||
|
enable = true;
|
||||||
|
functions = {
|
||||||
|
};
|
||||||
|
|
||||||
|
shellAliases = {
|
||||||
|
cat = "bat --theme=GitHub ";
|
||||||
|
l = "exa -l --color=always ";
|
||||||
|
htop = "btm --color nord-light -b --tree";
|
||||||
|
Htop = "btm --color nord-light --tree";
|
||||||
|
brew64 = "arch -x86_64 /usr/local/bin/brew";
|
||||||
|
|
||||||
|
# My own commands for easy access
|
||||||
|
thisterm = "cd ~/Projects/uw/$CURRENT_TERM";
|
||||||
|
today = "date +%F";
|
||||||
|
};
|
||||||
|
|
||||||
|
interactiveShellInit = ''
|
||||||
|
set fish_greeting
|
||||||
|
|
||||||
|
# Set up an editor alias
|
||||||
|
if test -n "$EDITOR"
|
||||||
|
alias e="$EDITOR"
|
||||||
|
else
|
||||||
|
alias e="kak"
|
||||||
|
end
|
||||||
|
|
||||||
|
# sudo => pls
|
||||||
|
source ~/.config/fish/pls.fish
|
||||||
|
|
||||||
|
# set up change_cmd
|
||||||
|
source ~/.config/fish/change_cmd.fish
|
||||||
|
|
||||||
|
|
||||||
|
# Load completion for github
|
||||||
|
gh completion --shell fish | source
|
||||||
|
|
||||||
|
# Bitwarden
|
||||||
|
source ~/.config/fish/bw.fish
|
||||||
|
|
||||||
|
# Source iTerm2 integration
|
||||||
|
source ~/.iterm2_shell_integration.fish
|
||||||
|
'';
|
||||||
|
plugins = [
|
||||||
|
{
|
||||||
|
name = "tide";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "IlanCosman";
|
||||||
|
repo = "tide";
|
||||||
|
rev = "3787c725f7f6a0253f59a2c0e9fde03202689c6c";
|
||||||
|
sha256 = "00zsib1q21bgxffjlyxf5rgcyq3h1ixwznwvid9k6mkkmwixv9lj";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "fzf";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "jethrokuan";
|
||||||
|
repo = "fzf";
|
||||||
|
rev = "479fa67d7439b23095e01b64987ae79a91a4e283";
|
||||||
|
sha256 = "0k6l21j192hrhy95092dm8029p52aakvzis7jiw48wnbckyidi6v";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
fzf = {
|
||||||
|
enable = true;
|
||||||
|
enableFishIntegration = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
gh = {
|
||||||
|
enable = true;
|
||||||
|
gitProtocol = "ssh";
|
||||||
|
};
|
||||||
|
|
||||||
|
jq.enable = true;
|
||||||
|
|
||||||
|
nushell.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# This value determines the Home Manager release that your
|
||||||
|
# configuration is compatible with. This helps avoid breakage
|
||||||
|
# when a new Home Manager release introduces backwards
|
||||||
|
# incompatible changes.
|
||||||
|
#
|
||||||
|
# You can update Home Manager without changing this value. See
|
||||||
|
# the Home Manager release notes for a list of state version
|
||||||
|
# changes in each release.
|
||||||
|
home.stateVersion = "21.11";
|
||||||
|
}
|
Loading…
Reference in a new issue