2024-04-07 15:35:12 -08:00
|
|
|
{ lib, config, pkgs, nur, inputs, ... }:
|
2024-02-25 15:34:13 -09:00
|
|
|
|
2024-03-02 19:44:54 -09:00
|
|
|
with lib.hm.gvariant;
|
2024-02-25 15:34:13 -09:00
|
|
|
{
|
2024-03-26 20:50:46 -08:00
|
|
|
imports = [
|
|
|
|
./modules/dconf.nix
|
2024-03-28 12:17:49 -08:00
|
|
|
./modules/shell.nix
|
2024-05-28 13:34:05 -08:00
|
|
|
./modules/firefox.nix
|
2024-03-26 20:50:46 -08:00
|
|
|
];
|
2024-02-25 15:34:13 -09:00
|
|
|
# Home Manager needs a bit of information about you and the
|
|
|
|
# paths it should manage.
|
|
|
|
home.username = "mir";
|
|
|
|
home.homeDirectory = "/home/mir";
|
|
|
|
home.packages = [
|
|
|
|
pkgs.btop
|
|
|
|
pkgs.killall
|
|
|
|
pkgs.gdb
|
|
|
|
pkgs.neofetch
|
|
|
|
pkgs.file
|
|
|
|
pkgs.findutils
|
|
|
|
pkgs.wget
|
|
|
|
pkgs.yt-dlp
|
|
|
|
pkgs.mpv
|
2024-03-05 17:45:43 -09:00
|
|
|
pkgs.fzf
|
2024-02-25 21:51:21 -09:00
|
|
|
pkgs.nerdfonts
|
2024-03-07 11:28:21 -09:00
|
|
|
pkgs.eza
|
2024-03-23 12:36:27 -08:00
|
|
|
pkgs.python3
|
2024-03-25 09:56:00 -08:00
|
|
|
pkgs.unzip
|
2024-02-25 15:34:13 -09:00
|
|
|
# pkgs.gnupg
|
|
|
|
# pkgs.python3
|
2024-03-02 14:13:44 -09:00
|
|
|
# (pkgs.python3.withPackages(
|
|
|
|
# ps: with ps; [
|
|
|
|
# epc sexpdata six pynput inflect
|
|
|
|
# pyqt6
|
|
|
|
# # pyqt6-qt6
|
|
|
|
# pyqt6-sip]))
|
2024-02-25 15:34:13 -09:00
|
|
|
# (pkgs.emacsWithPackagesFromUsePackage {
|
|
|
|
# package = pkgs.emacs29-pgtk;
|
|
|
|
# config = ~/.emacs.d/init.el;
|
|
|
|
# extraEmacsPackages = epkgs: [
|
|
|
|
# epkgs.dash;
|
|
|
|
# ]
|
|
|
|
# })
|
|
|
|
# pkgs.fetchFromGitHub
|
|
|
|
];
|
|
|
|
|
|
|
|
# This value determines the Home Manager release that your
|
|
|
|
# configuration is compatible with. This helps avoid breakage
|
|
|
|
# when a new Home Manager release introduces backwards
|
|
|
|
# incompatible changes.
|
|
|
|
#
|
|
|
|
# You can update Home Manager without changing this value. See
|
|
|
|
# the Home Manager release notes for a list of state version
|
|
|
|
# changes in each release.
|
|
|
|
home.stateVersion = "23.05";
|
|
|
|
|
|
|
|
# Let Home Manager install and manage itself.
|
|
|
|
programs.home-manager = {
|
|
|
|
enable = true;
|
|
|
|
# version = "23.11";
|
|
|
|
};
|
|
|
|
# environment.variables = rec {
|
|
|
|
# EDITOR = "emacs -nw";
|
|
|
|
# };
|
2024-03-14 19:09:41 -08:00
|
|
|
home.sessionVariables = {
|
|
|
|
EDITOR = "emacs";
|
|
|
|
TERMINAL = "kitty";
|
|
|
|
TERM_PROGRAM = "kitty";
|
|
|
|
BROWSER = "firefox";
|
2024-04-07 15:35:12 -08:00
|
|
|
MOZ_USE_XINPUT2 = "1";
|
2024-03-14 19:09:41 -08:00
|
|
|
};
|
|
|
|
programs.kitty = {
|
2024-04-12 08:30:37 -08:00
|
|
|
# format from https://johns.codes/blog/organizing-system-configs-with-nixos
|
2024-03-14 19:09:41 -08:00
|
|
|
enable = true;
|
2024-04-12 08:30:37 -08:00
|
|
|
settings = {
|
|
|
|
font_family = "MesloLGS NF";
|
|
|
|
};
|
2024-03-14 19:09:41 -08:00
|
|
|
};
|
2024-02-25 15:34:13 -09:00
|
|
|
# environment.systemPackages = with pkgs; [
|
|
|
|
# (python3.withPackages(
|
|
|
|
# ps: with ps; [epc sexpdata six pynput inflect PyQt6 PyQt6-Qt6 PyQt6-sip]))
|
|
|
|
# ];
|
2024-02-25 21:49:40 -09:00
|
|
|
fonts.fontconfig.enable = true;
|
2024-02-25 15:34:13 -09:00
|
|
|
programs.git = {
|
|
|
|
enable = true;
|
2024-03-13 08:59:35 -08:00
|
|
|
package = pkgs.gitFull;
|
2024-02-25 15:34:13 -09:00
|
|
|
userName = "mir";
|
|
|
|
userEmail = "mirmarq428@gmail.com";
|
2024-03-23 12:36:08 -08:00
|
|
|
extraConfig = {
|
|
|
|
credential.helper = "store";
|
|
|
|
init.defaultBranch = "main";
|
|
|
|
};
|
2024-02-25 15:34:13 -09:00
|
|
|
};
|
|
|
|
# programs.gdb = {
|
|
|
|
# enable = true;
|
|
|
|
# };
|
2024-03-23 12:36:27 -08:00
|
|
|
# home.file.".emacs.d" = {
|
|
|
|
# source = inputs.emacs-config;
|
|
|
|
# recursive = true;
|
|
|
|
# };
|
2024-03-26 20:50:46 -08:00
|
|
|
|
2024-03-07 12:14:09 -09:00
|
|
|
programs.hyfetch = {
|
|
|
|
enable = true;
|
|
|
|
settings = {
|
2024-06-04 13:51:46 -08:00
|
|
|
preset = "nonbinary";
|
2024-03-07 12:14:09 -09:00
|
|
|
mode = "rgb";
|
|
|
|
color_align = {
|
|
|
|
mode = "horizontal";
|
|
|
|
};
|
2024-06-04 13:51:46 -08:00
|
|
|
backend = "fastfetch";
|
2024-03-07 12:14:09 -09:00
|
|
|
};
|
|
|
|
};
|
2024-02-25 15:34:13 -09:00
|
|
|
|
|
|
|
programs.gpg = {
|
2024-02-25 21:50:01 -09:00
|
|
|
enable = true;
|
2024-03-13 08:53:07 -08:00
|
|
|
# package = pkgs.gnupg.overrideAttrs (orig: {
|
|
|
|
# version = "2.4.0";
|
|
|
|
# src = pkgs.fetchurl {
|
|
|
|
# url = "mirror://gnupg/gnupg/gnupg-2.4.0.tar.bz2";
|
|
|
|
# hash = "sha256-HXkVjdAdmSQx3S4/rLif2slxJ/iXhOosthDGAPsMFIM=";
|
|
|
|
# };
|
|
|
|
# });
|
2024-02-25 21:50:01 -09:00
|
|
|
# agent = {
|
|
|
|
# pinentryFlavor = "gnome3";
|
|
|
|
# };
|
2024-02-25 15:34:13 -09:00
|
|
|
};
|
|
|
|
|
|
|
|
services.gpg-agent = {
|
|
|
|
enable = true;
|
|
|
|
defaultCacheTtl = 1800;
|
|
|
|
enableSshSupport = true;
|
|
|
|
};
|
|
|
|
|
|
|
|
}
|