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 keynav
54
55 # other
56 mpv
57 feh
58 kolourpaint
59
60 # browsers
61 firefox
62 qutebrowser
63 chromium
64
65 # languages
66 #texlive.combined.scheme-medium # includes latexmk
67 #texlivePackages.minted
68 pgf-umlsd # latex diagrams
69 pgf
70 (pkgs.texlive.combine {
71 inherit (pkgs.texlive)
72 scheme-medium # includes latexmk
73 minted # syntax highligting
74 pgf
75 ;
76 })
77 #gcc
78 clang
79 clang-tools
80 pkg-config
81 openssl
82 stdenv
83 rustup
84 sage
85 go
86 python3
87 pipx
88 nodejs
89
90 ];
91
92 environment.variables = {
93 LIBCLANG_PATH = "${pkgs.llvmPackages_17.libclang.lib}/lib";
94 PKG_CONFIG_PATH = "${pkgs.openssl.dev}/lib/pkgconfig";
95 OPENSSL_DIR = "${pkgs.openssl.dev}";
96 };
97
98 fonts.packages = with pkgs; [
99 dina-font
100 proggyfonts
101 terminus_font
102 fira-code
103 liberation_ttf
104 noto-fonts
105 tamsyn
106 termsyn
107 gohufont
108 ];
109
110 programs.zsh.enable = true;
111 users.defaultUserShell = pkgs.zsh;
112 environment.shells = with pkgs; [zsh];
113
114 xdg.mime.enable=true;
115 xdg.mime.defaultApplications = {
116 "application/pdf" = "zathura";
117 };
118}