make * composable; add install medium; archive prevoius code
This commit is contained in:
parent
5ab3bfc58c
commit
93b1488bd9
74 changed files with 955 additions and 1132 deletions
|
@ -1,308 +0,0 @@
|
|||
{ config,
|
||||
pkgs,
|
||||
... }:
|
||||
|
||||
let
|
||||
environmentVariables = {
|
||||
EDITOR = "nvim";
|
||||
};
|
||||
|
||||
dotfiles = builtins.fetchGit {
|
||||
url = "https://gitlab.com/steveeJ/dotfiles.git";
|
||||
ref = "master";
|
||||
};
|
||||
|
||||
mkSimpleTrayService = { execStart, description }: {
|
||||
Unit = {
|
||||
Description = description;
|
||||
After = [ "graphical-session-pre.target" ];
|
||||
PartOf = [ "graphical-session.target" ];
|
||||
};
|
||||
|
||||
Install = {
|
||||
WantedBy = [ "graphical-session.target" ];
|
||||
};
|
||||
|
||||
Service = {
|
||||
ExecStart = execStart;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
in {
|
||||
imports = [
|
||||
"${builtins.fetchGit { url = "https://github.com/rycee/home-manager.git"; ref = "master"; }}/nixos"
|
||||
];
|
||||
|
||||
nixpkgs.config = {
|
||||
allowBroken = false;
|
||||
allowUnfree = true;
|
||||
|
||||
packageOverrides = pkgs: with pkgs; {
|
||||
busyboxStatic = busybox.override {
|
||||
enableStatic = true;
|
||||
extraConfig = ''
|
||||
CONFIG_STATIC y
|
||||
CONFIG_INSTALL_APPLET_DONT y
|
||||
CONFIG_INSTALL_APPLET_SYMLINKS n
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
];
|
||||
|
||||
home-manager.users.steveej = {
|
||||
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
enableAdobeFlash = false;
|
||||
enableGoogleTalk = true;
|
||||
enableIcedTea = true;
|
||||
};
|
||||
|
||||
programs.command-not-found.enable = true;
|
||||
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
|
||||
# will be called again by oh-my-zsh
|
||||
enableCompletion = false;
|
||||
enableAutosuggestions = true;
|
||||
initExtra = ''
|
||||
PROMPT='%F{%(!.red.green)}%n%f@%m %(?.%F{green}✓%f.%F{red}✗ ($?%))%f %F{blue}%~%f %F{magenta}$(git_prompt_info)%f
|
||||
%_%F{%(!.red.green)}$(prompt_char)%f '
|
||||
RPROMPT=""
|
||||
|
||||
# Automatic rehash
|
||||
zstyle ':completion:*' rehash true
|
||||
|
||||
if [ -f $HOME/.shrc.d/sh_aliases ]; then
|
||||
. $HOME/.shrc.d/sh_aliases
|
||||
fi
|
||||
|
||||
# source "$HOME/.homesick/repos/homeshick/homeshick.sh"
|
||||
# fpath=($HOME/.homesick/repos/homeshick/completions $fpath)
|
||||
|
||||
|
||||
# Disable intercepting of ctrl-s and ctrl-q as flow control.
|
||||
stty stop ''' -ixoff -ixon
|
||||
|
||||
# don't cd into directories when executed
|
||||
unsetopt AUTO_CD
|
||||
|
||||
# Load direnv
|
||||
eval "$(direnv hook zsh)"
|
||||
'';
|
||||
sessionVariables = environmentVariables // {
|
||||
# Add more envrionment variables here
|
||||
};
|
||||
|
||||
plugins = [
|
||||
{
|
||||
# will source zsh-autosuggestions.plugin.zsh
|
||||
name = "zsh-autosuggestions";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "zsh-users";
|
||||
repo = "zsh-autosuggestions";
|
||||
rev = "v0.4.0";
|
||||
sha256 = "0z6i9wjjklb4lvr7zjhbphibsyx51psv50gm07mbb0kj9058j6kc";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "enhancd";
|
||||
file = "init.sh";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "b4b4r07";
|
||||
repo = "enhancd";
|
||||
rev = "v2.2.1";
|
||||
sha256 = "0iqa9j09fwm6nj5rpip87x3hnvbbz9w9ajgm6wkrd5fls8fn8i5g";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "pass";
|
||||
src = "${pkgs.oh-my-zsh}/share/oh-my-zsh/plugins/pass";
|
||||
}
|
||||
{
|
||||
name = "minikube";
|
||||
src = "${pkgs.oh-my-zsh}/share/oh-my-zsh/plugins/minikube";
|
||||
}
|
||||
];
|
||||
oh-my-zsh = {
|
||||
enable = true;
|
||||
theme = "tjkirch";
|
||||
plugins = [
|
||||
"git"
|
||||
"sudo"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
programs.neovim = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
programs.git = {
|
||||
enable = true;
|
||||
userName = "Stefan Junker";
|
||||
userEmail = "mail@stefanjunker.de";
|
||||
};
|
||||
|
||||
home.keyboard = {
|
||||
layout = "us";
|
||||
variant = "altgr-intl";
|
||||
options = [
|
||||
"nodeadkeys"
|
||||
# "caps:swapescape"
|
||||
];
|
||||
};
|
||||
|
||||
xsession = {
|
||||
enable = true;
|
||||
windowManager.command = "${pkgs.qtile}/bin/qtile";
|
||||
initExtra = ''
|
||||
${pkgs.autorandr}/bin/autorandr -c
|
||||
${pkgs.feh}/bin/feh --bg-scale ${pkgs.nixos-artwork.wallpapers.simple-blue}/share/artwork/gnome/nix-wallpaper-simple-blue.png
|
||||
|
||||
# Workaround for Libreoffice to force gtk3
|
||||
export SAL_USE_VCLPLUGIN=gtk3
|
||||
'';
|
||||
};
|
||||
|
||||
home.file = {
|
||||
".config/qtile/config.py" = {
|
||||
source = "${dotfiles}/home/.config/qtile/config.py";
|
||||
};
|
||||
".config/roxterm.sourceforge.net" = {
|
||||
source = "${dotfiles}/home/.config/roxterm.sourceforge.net";
|
||||
recursive = false;
|
||||
};
|
||||
".config/autorandr" = {
|
||||
source = "${dotfiles}/home/.config/autorandr";
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
|
||||
services = {
|
||||
gnome-keyring.enable = true;
|
||||
blueman-applet.enable = true;
|
||||
screen-locker = {
|
||||
enable = true;
|
||||
inactiveInterval = 7;
|
||||
lockCmd = "${pkgs.xscreensaver}/bin/xscreensaver-command -lock";
|
||||
};
|
||||
xscreensaver.enable = true;
|
||||
network-manager-applet.enable = true;
|
||||
syncthing.enable = true;
|
||||
gpg-agent = {
|
||||
enable = true;
|
||||
enableScDaemon = true;
|
||||
enableSshSupport = true;
|
||||
grabKeyboardAndMouse = true;
|
||||
};
|
||||
flameshot.enable = true;
|
||||
};
|
||||
|
||||
systemd.user = {
|
||||
startServices = true;
|
||||
services = {
|
||||
redshift-gtk = mkSimpleTrayService {
|
||||
execStart = "${pkgs.redshift}/bin/redshift-gtk -v -l 47.6691:9.1698 -t 7000:4500 -m randr";
|
||||
description = "redshift gtk applet";
|
||||
};
|
||||
|
||||
pasystray = mkSimpleTrayService {
|
||||
execStart = "${pkgs.pasystray}/bin/pasystray";
|
||||
description = "pasystray applet";
|
||||
};
|
||||
|
||||
cbatticon = mkSimpleTrayService {
|
||||
execStart = "${pkgs.cbatticon}/bin/cbatticon";
|
||||
description = "cbatticon applet";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
home.packages = []
|
||||
++ (with pkgs; [
|
||||
# Version Control Systems
|
||||
git-crypt
|
||||
gitless
|
||||
|
||||
# Filesystem Tools
|
||||
ntfs3g
|
||||
ddrescue
|
||||
ncdu
|
||||
unetbootin
|
||||
pcmanfm
|
||||
hdparm
|
||||
testdisk
|
||||
python27Packages.binwalk
|
||||
gptfdisk
|
||||
|
||||
# Password Management
|
||||
gnupg
|
||||
(hiPrio pass)
|
||||
pass-otp
|
||||
qtpass
|
||||
rofi-pass
|
||||
yubikey-neo-manager
|
||||
yubikey-personalization
|
||||
yubikey-personalization-gui
|
||||
gnome3.gnome_keyring
|
||||
gnome3.seahorse
|
||||
|
||||
# Code Editors
|
||||
xclip
|
||||
xsel
|
||||
|
||||
# Archive Managers
|
||||
sshfsFuse
|
||||
xarchive
|
||||
p7zip
|
||||
zip
|
||||
unzip
|
||||
gzip
|
||||
lzop
|
||||
|
||||
# X Tools/Libraries
|
||||
lightdm
|
||||
qtile
|
||||
feh
|
||||
xscreensaver
|
||||
gnome3.networkmanagerapplet
|
||||
autorandr
|
||||
arandr
|
||||
gnome3.gnome_themes_standard
|
||||
gnome3.adwaita-icon-theme
|
||||
lxappearance
|
||||
xorg.xcursorthemes
|
||||
|
||||
# Misc Desktop Tools
|
||||
direnv
|
||||
ltunify
|
||||
solaar
|
||||
dex
|
||||
roxterm
|
||||
busyboxStatic
|
||||
xorg.xbacklight
|
||||
coreutils
|
||||
lsof
|
||||
pavucontrol
|
||||
x11_ssh_askpass
|
||||
xdotool
|
||||
xdg_utils
|
||||
xdg-user-dirs
|
||||
gnome3.dconf
|
||||
picocom
|
||||
glib.dev # contains gdbus tool
|
||||
|
||||
|
||||
# Misc Development Tools
|
||||
jq
|
||||
direnv
|
||||
]);
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue