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 pavucontrol
51
52 # other
53 mpv
54 feh
55 kolourpaint
56
57 # browsers
58 firefox
59 qutebrowser
60 chromium
61
62 # languages
63 texlive.combined.scheme-medium # includes latexmk
64 #pgf-umlsd # latex diagrams
65 #pgf
66 #(pkgs.texlive.combine {
67 # inherit (pkgs.texlive)
68 # scheme-medium
69 # pgf
70 # ;
71 #})
72 #gcc
73 clang
74 clang-tools
75 stdenv
76 rustup
77 sage
78 go
79 python3
80 nodejs
81
82 ];
83
84 environment.variables = {
85 LIBCLANG_PATH = "${pkgs.llvmPackages_17.libclang.lib}/lib";
86 };
87
88 fonts.packages = with pkgs; [
89 dina-font
90 proggyfonts
91 terminus_font
92 fira-code
93 liberation_ttf
94 noto-fonts
95 tamsyn
96 termsyn
97 gohufont
98 ];
99
100 programs.zsh.enable = true;
101 users.defaultUserShell = pkgs.zsh;
102 environment.shells = with pkgs; [zsh];
103
104}