Improve repo structure
|
|
@ -1,22 +0,0 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
hardware.opengl.driSupport32Bit = true;
|
||||
home-manager.users.froidmpa = { pkgs, config, ... }: {
|
||||
nixpkgs.config = {
|
||||
allowUnfree = true;
|
||||
packageOverrides = super:
|
||||
let self = super.pkgs; in
|
||||
{
|
||||
lutris-unwrapped = super.lutris-unwrapped.overridePythonAttrs (oldAttrs: rec {
|
||||
patches = [
|
||||
./lutris_sort_new_with_model_fix.patch
|
||||
];
|
||||
});
|
||||
};
|
||||
};
|
||||
home.packages = with pkgs; [
|
||||
steam
|
||||
dolphinEmu
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
@ -1,120 +0,0 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
zsh-syntax-highlighting
|
||||
ranger
|
||||
R
|
||||
tldr
|
||||
thefuck
|
||||
atool
|
||||
linuxPackages.perf
|
||||
];
|
||||
|
||||
programs = {
|
||||
neovim = {
|
||||
enable = true;
|
||||
vimAlias = true;
|
||||
plugins = with pkgs; [
|
||||
vimPlugins.gruvbox-community
|
||||
vimPlugins.vim-airline
|
||||
vimPlugins.vim-airline-themes
|
||||
vimPlugins.vim-gitgutter
|
||||
vimPlugins.nerdtree
|
||||
vimPlugins.nerdtree-git-plugin
|
||||
vimPlugins.ctrlp-vim
|
||||
vimPlugins.tabular
|
||||
];
|
||||
extraConfig = ''
|
||||
let g:gruvbox_italic=1
|
||||
colorscheme gruvbox
|
||||
set background=dark
|
||||
let g:airline_powerline_fonts = 1
|
||||
autocmd VimEnter * hi Normal ctermbg=NONE guibg=NONE
|
||||
|
||||
"Toggle NERDTree with Ctrl-N
|
||||
map <C-n> :NERDTreeToggle<CR>
|
||||
|
||||
"Show hidden files in NERDTree
|
||||
let NERDTreeShowHidden=1
|
||||
|
||||
set number relativenumber
|
||||
|
||||
" Run xrdb whenever Xdefaults or Xresources are updated.
|
||||
autocmd BufWritePost ~/.Xresources,~/.Xdefaults !xrdb %
|
||||
'';
|
||||
};
|
||||
bat.enable = true;
|
||||
jq.enable = true;
|
||||
fzf.enable = true;
|
||||
lesspipe.enable = true;
|
||||
zathura.enable = true;
|
||||
pazi.enable = true;
|
||||
htop = {
|
||||
enable = true;
|
||||
hideUserlandThreads = true;
|
||||
highlightBaseName = true;
|
||||
fields = [ "PID" "USER" "M_RESIDENT" "M_SHARE" "STATE" "PERCENT_CPU" "PERCENT_MEM" "IO_RATE" "TIME" "COMM" ];
|
||||
meters.left = [ "LeftCPUs" "Memory" "Swap" ];
|
||||
meters.right = [ "RightCPUs" "Tasks" "LoadAverage" "Uptime" ];
|
||||
};
|
||||
broot = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
};
|
||||
command-not-found.enable = true;
|
||||
zsh = {
|
||||
enable = true;
|
||||
history = {
|
||||
save = 50000;
|
||||
size = 50000;
|
||||
};
|
||||
enableAutosuggestions = true;
|
||||
initExtra = ''
|
||||
autoload -Uz up-line-or-beginning-search down-line-or-beginning-search
|
||||
zle -N up-line-or-beginning-search
|
||||
zle -N down-line-or-beginning-search
|
||||
|
||||
[[ -n "$key[Up]" ]] && bindkey -- "$key[Up]" up-line-or-beginning-search
|
||||
[[ -n "$key[Down]" ]] && bindkey -- "$key[Down]" down-line-or-beginning-search
|
||||
|
||||
eval $(thefuck --alias)
|
||||
'';
|
||||
oh-my-zsh = {
|
||||
enable = true;
|
||||
plugins = [
|
||||
"git"
|
||||
];
|
||||
theme = "robbyrussell";
|
||||
};
|
||||
plugins = [
|
||||
{
|
||||
name = "zsh-syntax-highlighting";
|
||||
file = "share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh";
|
||||
src = "${pkgs.zsh-syntax-highlighting}";
|
||||
}
|
||||
];
|
||||
};
|
||||
direnv = {
|
||||
enable = true;
|
||||
enableNixDirenvIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
nix-direnv = {
|
||||
enable = true;
|
||||
enableFlakes = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
home.file.".config/ranger" = {
|
||||
source = ./files/ranger;
|
||||
recursive = true;
|
||||
};
|
||||
|
||||
home.file.".config/ranger/plugins" = {
|
||||
source = builtins.fetchGit {
|
||||
url = "git://github.com/phfroidmont/ranger_devicons.git";
|
||||
rev = "e02b6a3203411b76616a0e4328245bf8b47c5dcc";
|
||||
};
|
||||
recursive = true;
|
||||
};
|
||||
}
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
home.packages = with pkgs; [
|
||||
jdk
|
||||
jetbrains.idea-community
|
||||
jetbrains.idea-ultimate
|
||||
maven
|
||||
sbt
|
||||
geckodriver
|
||||
];
|
||||
|
||||
services.gpg-agent = {
|
||||
enable = true;
|
||||
enableSshSupport = false;
|
||||
pinentryFlavor = "gtk2";
|
||||
};
|
||||
programs.gpg.enable = true;
|
||||
}
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./cli.nix
|
||||
./xmonad.nix
|
||||
./gui.nix
|
||||
./dev.nix
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
i3lock
|
||||
];
|
||||
}
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
|
||||
nixpkgs.config.packageOverrides = pkgs: {
|
||||
nur = import (builtins.fetchTarball "https://github.com/nix-community/NUR/archive/master.tar.gz") {
|
||||
inherit pkgs;
|
||||
};
|
||||
};
|
||||
home.packages = with pkgs; [
|
||||
firefox
|
||||
brave
|
||||
keepassxc
|
||||
krita
|
||||
element-desktop
|
||||
mpv
|
||||
mumble
|
||||
libreoffice-fresh
|
||||
thunderbird
|
||||
portfolio
|
||||
transmission-remote-gtk
|
||||
monero-gui
|
||||
];
|
||||
services.nextcloud-client.enable = true;
|
||||
services.udiskie.enable = true;
|
||||
}
|
||||
|
|
@ -1,207 +0,0 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
xsession = {
|
||||
enable = true;
|
||||
windowManager.xmonad = {
|
||||
enable = true;
|
||||
enableContribAndExtras = true;
|
||||
config = ./files/xmonad.hs;
|
||||
};
|
||||
initExtra = ''
|
||||
keepassxc &
|
||||
'';
|
||||
numlock.enable = true;
|
||||
};
|
||||
nixpkgs.config.packageOverrides = pkgs: {
|
||||
ncmpcpp = pkgs.ncmpcpp.override { visualizerSupport = true; };
|
||||
firefox = pkgs.firefox.override { pkcs11Modules = [ pkgs.eid-mw ]; };
|
||||
};
|
||||
|
||||
home = {
|
||||
sessionVariables = {
|
||||
EDITOR = "vim";
|
||||
QT_AUTO_SCREEN_SCALE_FACTOR = "0";
|
||||
};
|
||||
packages = with pkgs; [
|
||||
haskellPackages.xmobar
|
||||
ncmpcpp
|
||||
mpc_cli
|
||||
pulsemixer
|
||||
feh
|
||||
xorg.xbacklight
|
||||
xorg.xinit
|
||||
xorg.xwininfo
|
||||
xorg.xkill
|
||||
scrot
|
||||
numix-gtk-theme
|
||||
|
||||
# Ranger preview utils
|
||||
w3m
|
||||
xclip
|
||||
odt2txt
|
||||
];
|
||||
keyboard = {
|
||||
layout = "fr";
|
||||
options = [ "caps:escape" ];
|
||||
};
|
||||
file = {
|
||||
".wallpaper.png".source = ./files/wallpaper.png;
|
||||
".xmonad/xmobarrc".source = ./files/xmobarrc;
|
||||
".config/ncmpcpp" = {
|
||||
source = ./files/ncmpcpp;
|
||||
recursive = true;
|
||||
};
|
||||
".xmonad/scripts" = {
|
||||
source = ./files/scripts;
|
||||
recursive = true;
|
||||
};
|
||||
".themes/oomox-gruvmox-dark-medium-default" = {
|
||||
source = ./files/oomox-gruvmox-dark-medium-default;
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
gtk = {
|
||||
enable = true;
|
||||
theme.name = "oomox-gruvmox-dark-medium-default";
|
||||
iconTheme.name = "oomox-gruvmox-dark-medium-default";
|
||||
};
|
||||
qt = {
|
||||
enable = true;
|
||||
platformTheme = "gtk";
|
||||
};
|
||||
services = {
|
||||
mpd = {
|
||||
enable = true;
|
||||
network.listenAddress = "any";
|
||||
musicDirectory = "${config.home.homeDirectory}/Nextcloud/Media/Music";
|
||||
playlistDirectory = "${config.home.homeDirectory}/Nextcloud/Playlists";
|
||||
extraConfig = ''
|
||||
max_output_buffer_size "16384"
|
||||
auto_update "yes"
|
||||
audio_output {
|
||||
type "pulse"
|
||||
name "pulse audio"
|
||||
device "pulse"
|
||||
mixer_type "hardware"
|
||||
}
|
||||
audio_output {
|
||||
type "fifo"
|
||||
name "toggle_visualizer"
|
||||
path "/tmp/mpd.fifo"
|
||||
format "44100:16:2"
|
||||
}
|
||||
'';
|
||||
};
|
||||
stalonetray = {
|
||||
enable = true;
|
||||
config = {
|
||||
geometry = "1x1-5+0";
|
||||
background = "#000000";
|
||||
transparent = true;
|
||||
grow_gravity = "E";
|
||||
icon_gravity = "E";
|
||||
icon_size = "24";
|
||||
kludges = "force_icons_size";
|
||||
};
|
||||
};
|
||||
unclutter.enable = true;
|
||||
pasystray.enable = true;
|
||||
dunst = {
|
||||
enable = true;
|
||||
settings = {
|
||||
global = {
|
||||
monitor = 0;
|
||||
geometry = "350x5-30+50";
|
||||
transparency = 10;
|
||||
font = "monospace 14";
|
||||
idle_threshold = 120;
|
||||
allow_markup = "yes";
|
||||
format = "<b>%s</b>\n%b";
|
||||
show_age_threshold = 300;
|
||||
word_wrap = "yes";
|
||||
sticky_history = "yes";
|
||||
sort = "yes";
|
||||
};
|
||||
frame = {
|
||||
width = 3;
|
||||
color = "#ebdbb2";
|
||||
};
|
||||
shortcuts = {
|
||||
close = "ctrl+space";
|
||||
close_all = "ctrl+shift+space";
|
||||
history = "ctrl+grave";
|
||||
context = "ctrl+shift+period";
|
||||
};
|
||||
urgency_low = {
|
||||
foreground = "#ebdbb2";
|
||||
background = "#32302f";
|
||||
timeout = 10;
|
||||
};
|
||||
urgency_normal = {
|
||||
foreground = "#ebdbb2";
|
||||
background = "#32302f";
|
||||
timeout = 10;
|
||||
};
|
||||
urgency_critical = {
|
||||
foreground = "#ebdbb2";
|
||||
background = "#32302f";
|
||||
timeout = 10;
|
||||
};
|
||||
};
|
||||
};
|
||||
screen-locker = {
|
||||
enable = true;
|
||||
inactiveInterval = 5;
|
||||
lockCmd = "${pkgs.i3lock}/bin/i3lock -e -f -c 000000 -i ~/.wallpaper.png";
|
||||
};
|
||||
};
|
||||
programs = {
|
||||
rofi = {
|
||||
enable = true;
|
||||
theme = "gruvbox-dark";
|
||||
terminal = "urxvt";
|
||||
};
|
||||
urxvt = {
|
||||
enable = true;
|
||||
package = pkgs.rxvt_unicode-with-plugins;
|
||||
fonts = [ "xft:monospace:size=12:antialias=true" ];
|
||||
scroll = {
|
||||
bar.enable = false;
|
||||
lines = 65535;
|
||||
};
|
||||
keybindings = {
|
||||
"Shift-Control-C" = "eval:selection_to_clipboard";
|
||||
"Shift-Control-V" = "eval:paste_clipboard";
|
||||
};
|
||||
extraConfig = {
|
||||
"perl-ext-common" = "default,clipboard,matcher,resize-font";
|
||||
"background" = "rgba:28ff/28ff/28ff/cf00";
|
||||
"foreground" = "#ebdbb2";
|
||||
"color0" = "#282828";
|
||||
"color8" = "#928374";
|
||||
"color1" = "#cc241d";
|
||||
"color9" = "#fb4934";
|
||||
"color2" = "#98971a";
|
||||
"color10" = "#b8bb26";
|
||||
"color3" = "#d79921";
|
||||
"color11" = "#fabd2f";
|
||||
"color4" = "#458588";
|
||||
"color12" = "#83a598";
|
||||
"color5" = "#b16286";
|
||||
"color13" = "#d3869b";
|
||||
"color6" = "#689d6a";
|
||||
"color14" = "#8ec07c";
|
||||
"color7" = "#a89984";
|
||||
"color15" = "#ebdbb2";
|
||||
"termName" = "rxvt-256color";
|
||||
"letterSpace" = "-1";
|
||||
"internalBorder" = "10";
|
||||
"depth" = "32";
|
||||
"resize-font.smaller" = "C-Down";
|
||||
"resize-font.bigger" = "C-Up";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
16
flake.nix
|
|
@ -11,14 +11,18 @@
|
|||
modules =
|
||||
[
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
imports = [
|
||||
./hosts/nixos-desktop/configuration.nix
|
||||
];
|
||||
./hardware/desktop.nix
|
||||
./profiles/base.nix
|
||||
./users
|
||||
({
|
||||
networking.hostName = "nixos-desktop";
|
||||
# Allow to externally control MPD
|
||||
networking.firewall.allowedTCPPorts = [ 6600 ];
|
||||
|
||||
system.configurationRevision = nixpkgs.lib.mkIf (self ? rev) self.rev;
|
||||
nix.registry.nixpkgs.flake = nixpkgs;
|
||||
}
|
||||
|
||||
system.stateVersion = "19.09";
|
||||
})
|
||||
];
|
||||
};
|
||||
|
||||
|
|
|
|||
50
hardware/desktop.nix
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
{
|
||||
imports = [
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot = {
|
||||
initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "sd_mod" ];
|
||||
initrd.kernelModules = [ "amdgpu" ];
|
||||
kernelModules = [ "kvm-amd" ];
|
||||
extraModulePackages = [ ];
|
||||
loader.systemd-boot.enable = true;
|
||||
loader.efi.canTouchEfiVariables = true;
|
||||
};
|
||||
|
||||
|
||||
fileSystems."/" =
|
||||
{
|
||||
device = "/dev/disk/by-uuid/f1e21558-88e6-413e-b56a-04e0b25e9ddd";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{
|
||||
device = "/dev/disk/by-uuid/CCD1-0415";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
fileSystems."/home/froidmpa/Nextcloud" = {
|
||||
device = "/dev/disk/by-uuid/a4ba8b21-ea33-4487-b6f6-9bb7470a0acb";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
swapDevices =
|
||||
[{ device = "/dev/disk/by-uuid/f714775c-b5af-4c0c-8330-999b43db4794"; }];
|
||||
|
||||
nix.maxJobs = lib.mkDefault 16;
|
||||
networking.interfaces.enp31s0.useDHCP = true;
|
||||
|
||||
services.xserver.videoDrivers = [ "amdgpu" ];
|
||||
|
||||
hardware.opengl = {
|
||||
driSupport = true;
|
||||
driSupport32Bit = true;
|
||||
extraPackages = with pkgs; [
|
||||
rocm-opencl-icd
|
||||
rocm-opencl-runtime
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
@ -1,72 +0,0 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../../configs/system.nix
|
||||
../../configs/network.nix
|
||||
../../configs/virtualisation.nix
|
||||
../../configs/games.nix
|
||||
];
|
||||
|
||||
home-manager.users.froidmpa = { pkgs, config, ... }: {
|
||||
imports = [
|
||||
../../configs/home/full.nix
|
||||
];
|
||||
|
||||
home.stateVersion = "20.09";
|
||||
|
||||
programs.git = {
|
||||
enable = true;
|
||||
userName = "Paul-Henri Froidmont";
|
||||
userEmail = "git.contact-57n2p@froidmont.org";
|
||||
signing = {
|
||||
key = "3AC6F170F01133CE393BCD94BE948AFD7E7873BE";
|
||||
signByDefault = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
hardware.opengl = {
|
||||
driSupport = true;
|
||||
driSupport32Bit = true;
|
||||
extraPackages = with pkgs; [
|
||||
rocm-opencl-icd
|
||||
rocm-opencl-runtime
|
||||
];
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
eid-mw
|
||||
];
|
||||
|
||||
fileSystems."/home/froidmpa/Nextcloud" = {
|
||||
device = "/dev/disk/by-uuid/a4ba8b21-ea33-4487-b6f6-9bb7470a0acb";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
networking.hostName = "nixos-desktop";
|
||||
networking.interfaces.enp31s0.useDHCP = true;
|
||||
|
||||
# Allow to externally control MPD
|
||||
networking.firewall.allowedTCPPorts = [ 6600 ];
|
||||
|
||||
console = {
|
||||
font = "Lat2-Terminus16";
|
||||
keyMap = "fr";
|
||||
};
|
||||
|
||||
i18n = {
|
||||
defaultLocale = "en_US.UTF-8";
|
||||
};
|
||||
|
||||
time.timeZone = "Europe/Amsterdam";
|
||||
|
||||
services.xserver.videoDrivers = [ "amdgpu" ];
|
||||
services.sshd.enable = true;
|
||||
services.pcscd.enable = true;
|
||||
|
||||
system.stateVersion = "19.09";
|
||||
}
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
|
||||
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ "amdgpu" ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{
|
||||
device = "/dev/disk/by-uuid/f1e21558-88e6-413e-b56a-04e0b25e9ddd";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{
|
||||
device = "/dev/disk/by-uuid/CCD1-0415";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices =
|
||||
[{ device = "/dev/disk/by-uuid/f714775c-b5af-4c0c-8330-999b43db4794"; }];
|
||||
|
||||
nix.maxJobs = lib.mkDefault 16;
|
||||
# High-DPI console
|
||||
console.font = lib.mkDefault "${pkgs.terminus_font}/share/consolefonts/ter-u28n.psf.gz";
|
||||
}
|
||||
7
modules/belgian-eid.nix
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
services.pcscd.enable = true;
|
||||
environment.systemPackages = with pkgs; [
|
||||
eid-mw
|
||||
];
|
||||
}
|
||||
22
modules/games.nix
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
|
||||
home-manager.users.froidmpa = { pkgs, config, ... }: {
|
||||
# nixpkgs.config = {
|
||||
# allowUnfree = true;
|
||||
# packageOverrides = super:
|
||||
# let self = super.pkgs; in
|
||||
# {
|
||||
# lutris-unwrapped = super.lutris-unwrapped.overridePythonAttrs (oldAttrs: rec {
|
||||
# patches = [
|
||||
# ./lutris_sort_new_with_model_fix.patch
|
||||
# ];
|
||||
# });
|
||||
# };
|
||||
# };
|
||||
# home.packages = with pkgs; [
|
||||
# steam
|
||||
# dolphinEmu
|
||||
# ];
|
||||
};
|
||||
}
|
||||
|
|
@ -8,9 +8,7 @@
|
|||
};
|
||||
users.users.froidmpa.extraGroups = [ "docker" "vboxusers" ];
|
||||
|
||||
home-manager.users.froidmpa = { pkgs, config, ... }: {
|
||||
home.packages = with pkgs; [
|
||||
docker-compose
|
||||
];
|
||||
};
|
||||
environment.systemPackages = with pkgs; [
|
||||
docker-compose
|
||||
];
|
||||
}
|
||||
19
profiles/base.nix
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./../modules/system.nix
|
||||
./../modules/network.nix
|
||||
./../modules/virtualisation.nix
|
||||
./../modules/belgian-eid.nix
|
||||
./../modules/games.nix
|
||||
];
|
||||
|
||||
time.timeZone = lib.mkDefault "Europe/Amsterdam";
|
||||
|
||||
i18n.defaultLocale = lib.mkDefault "en_US.UTF-8";
|
||||
|
||||
console = {
|
||||
font = lib.mkDefault "${pkgs.terminus_font}/share/consolefonts/ter-u28n.psf.gz";
|
||||
keyMap = lib.mkDefault "fr";
|
||||
};
|
||||
}
|
||||
214
users/default.nix
Normal file
|
|
@ -0,0 +1,214 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
|
||||
home-manager.users.froidmpa = { pkgs, config, ... }: {
|
||||
nixpkgs.config = {
|
||||
allowUnfree = true;
|
||||
packageOverrides = pkgs: {
|
||||
ncmpcpp = pkgs.ncmpcpp.override { visualizerSupport = true; };
|
||||
firefox = pkgs.firefox.override { pkcs11Modules = [ pkgs.eid-mw ]; };
|
||||
lutris-unwrapped = pkgs.lutris-unwrapped.overridePythonAttrs (oldAttrs: rec {
|
||||
patches = [
|
||||
./lutris_sort_new_with_model_fix.patch
|
||||
];
|
||||
});
|
||||
};
|
||||
};
|
||||
|
||||
xsession = {
|
||||
enable = true;
|
||||
windowManager.xmonad = {
|
||||
enable = true;
|
||||
enableContribAndExtras = true;
|
||||
config = ./files/xmonad.hs;
|
||||
};
|
||||
initExtra = ''
|
||||
keepassxc &
|
||||
'';
|
||||
numlock.enable = true;
|
||||
};
|
||||
|
||||
services = {
|
||||
nextcloud-client.enable = true;
|
||||
udiskie.enable = true;
|
||||
gpg-agent = {
|
||||
enable = true;
|
||||
enableSshSupport = false;
|
||||
pinentryFlavor = "gtk2";
|
||||
};
|
||||
mpd = import ./froidmpa/mpd.nix { inherit config; };
|
||||
stalonetray = {
|
||||
enable = true;
|
||||
config = {
|
||||
geometry = "1x1-5+0";
|
||||
background = "#000000";
|
||||
transparent = true;
|
||||
grow_gravity = "E";
|
||||
icon_gravity = "E";
|
||||
icon_size = "24";
|
||||
kludges = "force_icons_size";
|
||||
};
|
||||
};
|
||||
unclutter.enable = true;
|
||||
pasystray.enable = true;
|
||||
dunst = import ./froidmpa/dunst.nix { };
|
||||
screen-locker = {
|
||||
enable = true;
|
||||
inactiveInterval = 5;
|
||||
lockCmd = "${pkgs.i3lock}/bin/i3lock -e -f -c 000000 -i ~/.wallpaper.png";
|
||||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
gpg.enable = true;
|
||||
git = {
|
||||
enable = true;
|
||||
userName = "Paul-Henri Froidmont";
|
||||
userEmail = "git.contact-57n2p@froidmont.org";
|
||||
signing = {
|
||||
key = lib.mkDefault "3AC6F170F01133CE393BCD94BE948AFD7E7873BE";
|
||||
signByDefault = true;
|
||||
};
|
||||
};
|
||||
rofi = {
|
||||
enable = true;
|
||||
theme = "gruvbox-dark";
|
||||
terminal = "urxvt";
|
||||
};
|
||||
urxvt = import ./froidmpa/urxvt.nix { inherit pkgs; };
|
||||
neovim = import ./froidmpa/neovim.nix { inherit pkgs; };
|
||||
bat.enable = true;
|
||||
jq.enable = true;
|
||||
fzf.enable = true;
|
||||
lesspipe.enable = true;
|
||||
zathura.enable = true;
|
||||
pazi.enable = true;
|
||||
htop = {
|
||||
enable = true;
|
||||
hideUserlandThreads = true;
|
||||
highlightBaseName = true;
|
||||
fields = [ "PID" "USER" "M_RESIDENT" "M_SHARE" "STATE" "PERCENT_CPU" "PERCENT_MEM" "IO_RATE" "TIME" "COMM" ];
|
||||
meters.left = [ "LeftCPUs" "Memory" "Swap" ];
|
||||
meters.right = [ "RightCPUs" "Tasks" "LoadAverage" "Uptime" ];
|
||||
};
|
||||
broot = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
};
|
||||
command-not-found.enable = true;
|
||||
zsh = import ./froidmpa/zsh.nix { inherit pkgs; };
|
||||
direnv = {
|
||||
enable = true;
|
||||
enableNixDirenvIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
nix-direnv = {
|
||||
enable = true;
|
||||
enableFlakes = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
gtk = {
|
||||
enable = true;
|
||||
theme.name = "oomox-gruvmox-dark-medium-default";
|
||||
iconTheme.name = "oomox-gruvmox-dark-medium-default";
|
||||
};
|
||||
qt = {
|
||||
enable = true;
|
||||
platformTheme = "gtk";
|
||||
};
|
||||
|
||||
home = {
|
||||
stateVersion = "20.09";
|
||||
|
||||
sessionVariables = {
|
||||
EDITOR = "vim";
|
||||
QT_AUTO_SCREEN_SCALE_FACTOR = "0";
|
||||
};
|
||||
|
||||
keyboard = {
|
||||
layout = "fr";
|
||||
options = [ "caps:escape" ];
|
||||
};
|
||||
|
||||
file = {
|
||||
".wallpaper.png".source = ./files/wallpaper.png;
|
||||
".xmonad/xmobarrc".source = ./files/xmobarrc;
|
||||
".config/ncmpcpp" = {
|
||||
source = ./files/ncmpcpp;
|
||||
recursive = true;
|
||||
};
|
||||
".xmonad/scripts" = {
|
||||
source = ./files/scripts;
|
||||
recursive = true;
|
||||
};
|
||||
".themes/oomox-gruvmox-dark-medium-default" = {
|
||||
source = ./files/oomox-gruvmox-dark-medium-default;
|
||||
recursive = true;
|
||||
};
|
||||
".config/ranger" = {
|
||||
source = ./files/ranger;
|
||||
recursive = true;
|
||||
};
|
||||
".config/ranger/plugins" = {
|
||||
source = builtins.fetchGit {
|
||||
url = "git://github.com/phfroidmont/ranger_devicons.git";
|
||||
rev = "e02b6a3203411b76616a0e4328245bf8b47c5dcc";
|
||||
};
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
|
||||
packages = with pkgs; [
|
||||
haskellPackages.xmobar
|
||||
i3lock
|
||||
ncmpcpp
|
||||
mpc_cli
|
||||
pulsemixer
|
||||
feh
|
||||
xorg.xbacklight
|
||||
xorg.xinit
|
||||
xorg.xwininfo
|
||||
xorg.xkill
|
||||
scrot
|
||||
numix-gtk-theme
|
||||
|
||||
# Ranger preview utils
|
||||
w3m
|
||||
xclip
|
||||
odt2txt
|
||||
|
||||
firefox
|
||||
brave
|
||||
keepassxc
|
||||
krita
|
||||
element-desktop
|
||||
mpv
|
||||
mumble
|
||||
libreoffice-fresh
|
||||
thunderbird
|
||||
portfolio
|
||||
transmission-remote-gtk
|
||||
monero-gui
|
||||
|
||||
jdk
|
||||
jetbrains.idea-community
|
||||
jetbrains.idea-ultimate
|
||||
maven
|
||||
sbt
|
||||
geckodriver
|
||||
|
||||
zsh-syntax-highlighting
|
||||
ranger
|
||||
R
|
||||
tldr
|
||||
thefuck
|
||||
atool
|
||||
linuxPackages.perf
|
||||
|
||||
steam
|
||||
dolphinEmu
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
Before Width: | Height: | Size: 154 KiB After Width: | Height: | Size: 154 KiB |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
|
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 2 KiB After Width: | Height: | Size: 2 KiB |
|
Before Width: | Height: | Size: 2 KiB After Width: | Height: | Size: 2 KiB |
|
Before Width: | Height: | Size: 2 KiB After Width: | Height: | Size: 2 KiB |
|
Before Width: | Height: | Size: 2 KiB After Width: | Height: | Size: 2 KiB |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 919 B After Width: | Height: | Size: 919 B |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 777 B After Width: | Height: | Size: 777 B |
|
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 150 B After Width: | Height: | Size: 150 B |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 161 B After Width: | Height: | Size: 161 B |
|
Before Width: | Height: | Size: 2 KiB After Width: | Height: | Size: 2 KiB |
|
Before Width: | Height: | Size: 2 KiB After Width: | Height: | Size: 2 KiB |
|
Before Width: | Height: | Size: 2 KiB After Width: | Height: | Size: 2 KiB |
|
Before Width: | Height: | Size: 2 KiB After Width: | Height: | Size: 2 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 2 KiB After Width: | Height: | Size: 2 KiB |
|
Before Width: | Height: | Size: 2 KiB After Width: | Height: | Size: 2 KiB |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 614 B After Width: | Height: | Size: 614 B |
|
Before Width: | Height: | Size: 731 B After Width: | Height: | Size: 731 B |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 806 B After Width: | Height: | Size: 806 B |
|
Before Width: | Height: | Size: 713 B After Width: | Height: | Size: 713 B |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 3.1 KiB |
|
Before Width: | Height: | Size: 9.4 KiB After Width: | Height: | Size: 9.4 KiB |
|
Before Width: | Height: | Size: 8.8 KiB After Width: | Height: | Size: 8.8 KiB |
|
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 46 KiB |
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 46 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |