I showed you my source code, pls respond
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

78 lines
2.6 KiB

3 years ago
3 years ago
  1. # This file is controlled by /etc/dotfiles/README.org
  2. {
  3. description = "Immutable NixOS dotfiles.";
  4. inputs = {
  5. nixpkgs.url = "nixpkgs/nixos-unstable";
  6. nixpkgs-unstable.url = "nixpkgs/master";
  7. flake-utils.url = "github:numtide/flake-utils";
  8. home-manager.url = "github:nix-community/home-manager";
  9. home-manager.inputs.nixpkgs.follows = "nixpkgs";
  10. emacs-overlay.url = "github:nix-community/emacs-overlay";
  11. nixos-hardware.url = "github:nixos/nixos-hardware";
  12. };
  13. outputs = inputs @ { self, nixpkgs, nixpkgs-unstable, ... }: {
  14. nixosConfigurations = {
  15. nixos = nixpkgs.lib.nixosSystem {
  16. system = "x86_64-linux";
  17. specialArgs = { inherit inputs; };
  18. modules = [
  19. ./hosts/nixos
  20. ./modules/x11.nix
  21. ./modules/ssh.nix
  22. ./modules/hugo.nix
  23. ./modules/docker.nix
  24. ./modules/flakes.nix
  25. ./modules/cachix.nix
  26. ./modules/firefox.nix
  27. inputs.home-manager.nixosModules.home-manager {
  28. home-manager.useGlobalPkgs = true;
  29. home-manager.useUserPackages = true;
  30. home-manager.users.chris = {
  31. home.stateVersion = "23.05";
  32. imports = [
  33. ./modules/git.nix
  34. ./modules/gpg.nix
  35. ./modules/vim.nix
  36. ./modules/gtk.nix
  37. ./modules/emacs.nix
  38. ];
  39. modules.git = {
  40. enable = true;
  41. name = "Christopher James Hayward";
  42. email = "chris@chrishayward.xyz";
  43. key = "37AB1CB72B741E478CA026D43025DCBD46F81C0F";
  44. };
  45. modules.gpg.enable = true;
  46. modules.vim.enable = true;
  47. modules.gtk.enable = true;
  48. modules.emacs.enable = true;
  49. };
  50. }
  51. ];
  52. };
  53. };
  54. } //
  55. inputs.flake-utils.lib.eachDefaultSystem (system:
  56. let
  57. pkgs = inputs.nixpkgs.legacyPackages.${system};
  58. in
  59. rec {
  60. devShells = {
  61. default = import ./shell.nix { inherit pkgs; };
  62. cc = import ./shells/cc.nix { inherit pkgs; };
  63. go = import ./shells/go.nix { inherit pkgs; };
  64. dart = import ./shells/dart.nix { inherit pkgs; };
  65. grpc = import ./shells/grpc.nix { inherit pkgs; };
  66. java = import ./shells/java.nix { inherit pkgs; };
  67. node = import ./shells/node.nix { inherit pkgs; };
  68. python = import ./shells/python.nix { inherit pkgs; };
  69. rust = import ./shells/rust.nix { inherit pkgs; };
  70. };
  71. }
  72. );
  73. }