arnaucube
arnaucube/configsPublic Self-hosted repository
configs/nixos/common-configuration.nix
nixos/common-configuration.nixRaw
  1# This file contains the config shared across different devices.
  2
  3{ config, pkgs, ... }:
  4
  5{
  6  # Set your time zone.
  7  time.timeZone = "Europe/Madrid";
  8
  9  # Select internationalisation properties.
 10  i18n.defaultLocale = "en_US.UTF-8";
 11
 12  i18n.extraLocaleSettings = {
 13    LC_ADDRESS = "es_ES.UTF-8";
 14    LC_IDENTIFICATION = "es_ES.UTF-8";
 15    LC_MEASUREMENT = "es_ES.UTF-8";
 16    LC_MONETARY = "es_ES.UTF-8";
 17    LC_NAME = "es_ES.UTF-8";
 18    LC_NUMERIC = "es_ES.UTF-8";
 19    LC_PAPER = "es_ES.UTF-8";
 20    LC_TELEPHONE = "es_ES.UTF-8";
 21    LC_TIME = "es_ES.UTF-8";
 22  };
 23
 24
 25  environment.systemPackages = with pkgs; [
 26	# minimal
 27  	vim
 28	neovim
 29 	wget
 30	tmux
 31	git
 32	delta
 33	tig
 34	mosh
 35	bat
 36	lf
 37	ripgrep
 38	fzf
 39	screenfetch
 40	htop
 41	alacritty
 42	zathura
 43	mate.atril
 44	xclip # to make clipboard work in neovim
 45	xorg.xmodmap
 46	xfce.xfce4-screenshooter
 47	xfce.thunar
 48	xfce.xfconf # needed to save preferences of thunar
 49	xfce.ristretto
 50	xfce.tumbler # for thumbnails of imgs
 51	pavucontrol
 52	jq
 53
 54	# other
 55	mpv
 56	feh
 57	kolourpaint
 58
 59	# browsers
 60	firefox
 61	qutebrowser
 62	chromium
 63
 64	# languages
 65	#texlive.combined.scheme-medium # includes latexmk
 66	#texlivePackages.minted
 67	pgf-umlsd # latex diagrams
 68	pgf
 69	(pkgs.texlive.combine {
 70		inherit (pkgs.texlive)
 71		scheme-medium # includes latexmk
 72		minted # syntax highligting
 73		pgf
 74		;
 75	})
 76	#gcc
 77	clang
 78	clang-tools
 79	pkg-config
 80	openssl
 81	stdenv
 82	rustup
 83	sage
 84	go
 85	python3
 86	pipx
 87	nodejs
 88
 89  ];
 90
 91  environment.variables = {
 92 	LIBCLANG_PATH = "${pkgs.llvmPackages_17.libclang.lib}/lib";
 93	PKG_CONFIG_PATH = "${pkgs.openssl.dev}/lib/pkgconfig";
 94	OPENSSL_DIR = "${pkgs.openssl.dev}";
 95  };
 96
 97  fonts.packages = with pkgs; [
 98    dina-font
 99    proggyfonts
100    terminus_font
101    fira-code
102    liberation_ttf
103    noto-fonts
104    tamsyn
105    termsyn
106    gohufont
107  ];
108
109  programs.zsh.enable = true;
110  users.defaultUserShell = pkgs.zsh;
111  environment.shells = with pkgs; [zsh];
112
113  xdg.mime.enable=true;
114  xdg.mime.defaultApplications = {
115    "application/pdf" = "zathura";
116  };
117}