{ config, pkgs, ... }:

let
  albert_autostart = (pkgs.makeAutostartItem {
    name    = "albert";
    package = pkgs.albert;
  });
  guake_autostart = (pkgs.makeAutostartItem {
    name    = "guake";
    package = pkgs.guake;
  });
in 
  {
    imports = [ 
      ./zsh.nix 
      ./code.nix 
      ./git.nix
      ./gnome.nix
    ];

    nixpkgs.config.allowUnfree = true;

    home = {
      stateVersion     = "21.05";
      sessionVariables = {
        EDITOR = "nvim";
        VISUAL = "nvim";
      };

      packages = with pkgs; [
    # essentials
    albert
    guake

    # browsers
    firefox
    brave
    chromium

    # reversing
    rizin

    nmap 

    slack
    signal-desktop
    teams
    discord
    element-desktop

    # music
    spotify

    # misc
    bind

    # system
    gparted
    sshfs

    # autostart
    albert_autostart
    guake_autostart
  ];
};
}