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.
165 lines
3.5 KiB
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;
|
|
}
|
|
|