You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
nixos-configuration/home.nix

165 lines
3.5 KiB

{
config,
pkgs,
pkgs-small,
nix-colors,
username,
...
}:
let
in
{
imports = [
nix-colors.homeManagerModules.default
./modules/dunst.nix
./modules/waybar.nix
./modules/ranger.nix
./hyperland
];
colorScheme = nix-colors.colorSchemes.gruvbox-material-dark-hard;
# TODO please change the username & home directory to your own
home.username = "${username}";
home.homeDirectory = "/home/${username}";
# Packages that should be installed to the user profile.
home.packages = with pkgs; [
pkgs-small.kitty
eza
git
git-lfs
obsidian
jq
direnv
kdePackages.okular
zip
ant
tmux
nixd # Nix language server for vscode
nixfmt-rfc-style
signal-desktop
teams-for-linux
slack
jetbrains-toolbox
nextcloud-client
pkgs-small.presenterm
font-awesome
nerd-fonts.jetbrains-mono
nerd-fonts.caskaydia-cove
nerd-fonts.fira-code
(pkgs.appimageTools.wrapType2 {
name = "atlassify";
pname = "atlassify";
version = "1.17.0";
src = fetchurl {
url = "https://github.com/setchy/atlassify/releases/download/v1.17.0/Atlassify-1.17.0.AppImage";
hash = "sha256-mfcxrd9axnmQMofth1M5ov2a4ppFE0ga0Gxjwbx2v9o=";
};
extraPkgs =
pkgs:
(appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
++ [
libsecret
];
})
(pkgs.stdenv.mkDerivation {
pname = "flowkeeper";
version = "0.9.1";
src = pkgs.fetchurl {
url = "https://github.com/flowkeeper-org/fk-desktop/releases/download/v0.9.1/Flowkeeper";
sha256 = "sha256-HCEG7LSM7h2Yz6BbvQ0KdmfYnKZOG+TZxMvE5o8gYiA=";
};
dontUnpack = true;
installPhase = ''
install -Dm755 $src $out/bin/flowkeeper
'';
meta = {
description = "Flowkeeper time tracker";
platforms = pkgs.lib.platforms.linux;
};
})
];
programs.ssh = {
enable = true;
extraConfig = ''
Host *
IdentityAgent "~/.1password/agent.sock"
'';
};
programs.git = {
enable = true;
lfs.enable = true;
};
programs.bash = {
enable = true;
historyIgnore = [
"l"
"ls"
"ll"
"cd"
"exit"
];
historyControl = [ "erasedups" ];
shellAliases = {
grep = "grep --color=auto";
".." = "cd ..";
"cdm" = "cd ~/mibex-plugins/monorepo";
};
initExtra = ''
# Custom colored bash prompt
PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
'';
profileExtra = ''
# Include user's private bin if present
if [ -d "$HOME/.local/bin" ] ; then
PATH="$HOME/.local/bin:$PATH"
fi
'';
};
programs.atuin = {
enable = true;
settings = {
auto_sync = true;
sync_frequency = "5m";
sync_address = "https://atuin.christianott.ch";
search_mode = "fuzzy";
};
};
programs.starship = {
enable = true;
enableBashIntegration = 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 = "23.11";
# Let home Manager install and manage itself.
# programs.home-manager.enable = true;
}

Powered by TurnKey Linux.