summaryrefslogblamecommitdiff
path: root/nixpkgs/common.nix
blob: 92b1fe0369ac4ce2c42f6b9420747e25b7488b1a (plain) (tree)
1
2
3
4
5
6
7
8
9
                
                       


                              
 

                     
                             


                                 

                   



                                                 


                                        
    


                                 
                                   
    


                                                   
                                     

              


                       


             
      
    



                                           
                                 
 
               
                                                               
                                                        
                                        
                               
                                                                           
                 

                   






                                                                                                       
                                                                                                                   

                                                                                                      



                                                                                                       
 
                         
                       


                    














                                    
{ pkgs, ... }: {
  home.username = "lx";
  home.packages = with pkgs; [
    nodejs-slim
  ];

  programs.direnv = {
    enable = true;
    nix-direnv.enable = true;
    enableBashIntegration = true;
  };

  programs.bash = {
    enable = true;
    shellAliases = {
      ll = "ls -lah";
      irc = "ssh -t adnab.me /usr/local/bin/irc";
    };
    bashrcExtra = ''
      export PATH=$HOME/.cargo/bin:$PATH
    '';
  };
  programs.keychain = {
    enable = true;
    enableBashIntegration = true;
    keys = [ "~/.ssh/id_ed25519" ];
  };
  programs.vim = {
    enable = true;
    extraConfig = (builtins.readFile ../vim/vimrc);
    plugins = with pkgs.vimPlugins; [
      fzf-vim
      nerdtree
      coc-nvim
      coc-json
      coc-rust-analyzer
      vim-nix
      vim-hcl
      vim-go
    ];
  };

  programs.git.enable = true;
  programs.git.userName = "Alex Auvolat";
  programs.git.userEmail = "alex@adnab.me";
  programs.git.lfs.enable = true;

  home.file = {
    ".vim/coc-settings.json".source = ../vim/coc-settings.json;
    ".config/tmux/tmux.conf".source = ../tmux/tmux.conf;
    ".config/sx/sxrc".executable = true;
    ".config/sx/sxrc".text = ''
      ${pkgs.xorg.xkbcomp}/bin/xkbcomp ${../xkb/symbols/custom-fr} $DISPLAY
      nm-applet &
      icewm-session
    '';
    ".config/icewm/preferences".source = ../icewm/preferences;
    ".config/icewm/keys".source = ../icewm/keys;
    ".config/icewm/menu".source = ../icewm/menu;
    ".config/icewm/theme".source = ../icewm/theme;
    ".config/icewm/toolbar".text = ''
      prog "Terminal" xterm st
      prog "Qutebrowser" ${pkgs.qutebrowser}/share/icons/hicolor/32x32/apps/qutebrowser.png qutebrowser
      prog "Firefox" ${pkgs.firefox-esr}/share/icons/hicolor/32x32/apps/firefox.png ${pkgs.firefox-esr}/bin/firefox
      prog "Midori" ${pkgs.midori}/share/icons/hicolor/22x22/apps/org.midori_browser.Midori.png midori
      prog "Sylpheed" ${pkgs.sylpheed}/share/pixmaps/sylpheed.png sylpheed
      prog "Thunderbird" ${pkgs.thunderbird}/share/icons/hicolor/32x32/apps/thunderbird.png thunderbird
      prog "Spotify" ${pkgs.spotify}/share/icons/hicolor/32x32/apps/spotify-client.png spotify
    '';
  };

  xsession.enable = true;
  home.keyboard = null;

  xdg.enable = true;
  xdg.userDirs = {
    desktop = null;
    documents = null;
    pictures = null;
    music = null;
    publicShare = null;
    templates = null;
    videos = null;
  };

  services.syncthing.enable = true;

  nixpkgs.config.allowUnfree = true;

  home.stateVersion = "22.11";
}