profiles/dev: add hardware submodule

This commit is contained in:
Gabriel Arazas 2023-12-25 20:05:49 +08:00
parent 26128d00da
commit 701a1b609f
No known key found for this signature in database
GPG Key ID: ADE0C41DAB221FCC
2 changed files with 27 additions and 21 deletions

View File

@ -14,6 +14,7 @@ in
profiles.dev = {
enable = true;
extras.enable = true;
hardware.enable = true;
containers.enable = true;
virtual-machines.enable = true;
neovim.enable = true;

View File

@ -6,6 +6,7 @@ in {
options.profiles.dev = {
enable = lib.mkEnableOption "basic configuration for software development";
extras.enable = lib.mkEnableOption "additional shell utilities";
hardware.enable = lib.mkEnableOption "additional hardware-related dev utilities";
containers.enable = lib.mkEnableOption "containers setup";
virtual-machines.enable = lib.mkEnableOption "virtual machines setup";
neovim.enable = lib.mkEnableOption "Neovim setup";
@ -41,18 +42,6 @@ in {
package = pkgs.gitFull;
};
# It's a given at life to have a GPG key.
programs.gnupg.agent.enable = true;
# Instrumentate your instrument.
programs.systemtap.enable = true;
# Search around sharks for wires.
programs.wireshark.enable = true;
# Profile your whole system.
services.sysprof.enable = true;
# Additional settings for developing with nix.
nix.settings = {
keep-outputs = true;
@ -72,15 +61,6 @@ in {
whois # Doctor, are you not?
valgrind # Making sure your applications don't pee as much.
# Measuring your bloated tanks power and bandwidth consumption.
powertop
nethogs
# Hardware and software diagnostics.
lsof # View every single open connections.
lshw # View your hardware.
pciutils # View your peripherals.
# All of the documentation.
man-pages # Extra manpages.
man-pages-posix # More POSIX manpages.
@ -122,6 +102,31 @@ in {
# Convenience!
environment.localBinInPath = true;
# It's a given at life to have a GPG key.
programs.gnupg.agent.enable = true;
})
(lib.mkIf cfg.hardware.enable {
environment.systemPackages = with pkgs; [
# Measuring your bloated tanks power and bandwidth consumption.
powertop
nethogs
# Hardware and software diagnostics.
lsof # View every single open connections.
lshw # View your hardware.
pciutils # View your peripherals.
];
# Instrumentate your instrument.
programs.systemtap.enable = true;
# Search around sharks for wires.
programs.wireshark.enable = true;
# Profile your whole system.
services.sysprof.enable = true;
})
# !!! Please add your user to the "libvirtd" group.