diff --git a/flake.nix b/flake.nix index 32bfc60..e3806d2 100644 --- a/flake.nix +++ b/flake.nix @@ -168,6 +168,20 @@ ./hosts/virus/configuration.nix ]; }; + "infiltrator" = nixpkgs.lib.nixosSystem rec { + system = "x86_64-linux"; + specialArgs = { + pkgs-unstable = import nixpkgs-unstable { + inherit system; + config.allowUnfree = true; + config.allowUnfreePredicate = _: true; + }; + inherit inputs self; + }; + modules = [ + ./hosts/infriltrator/configuration.nix + ]; + }; }; homeConfigurations = forAllSystems ({ diff --git a/hosts/infriltrator/configuration.nix b/hosts/infriltrator/configuration.nix new file mode 100644 index 0000000..d40f9ff --- /dev/null +++ b/hosts/infriltrator/configuration.nix @@ -0,0 +1,94 @@ +{ + inputs, + lib, + modulesPath, + pkgs, + self, + ... +}: { + imports = [ + "${modulesPath}/installer/cd-dvd/installation-cd-minimal.nix" + ]; + + networking.hostName = "infiltrator"; + + environment.systemPackages = + [ + inputs.disko.packages.${pkgs.stdenv.hostPlatform.system}.disko + inputs.disko.packages.${pkgs.stdenv.hostPlatform.system}.disko-install + + (pkgs.callPackage ( + { + symlinkJoin, + fastfetchMinimal, + makeWrapper, + ... + }: + symlinkJoin ({ + paths = [fastfetchMinimal]; + nativeBuildInputs = [makeWrapper]; + postBuild = "wrapProgram $out/bin/fastfetch --add-flags '-l ${../../static/infiltrator.txt} --color red'"; + } + // {inherit (fastfetchMinimal) name passthru pname version;}) + ) {}) + ] + ++ (with self.packages.${pkgs.stdenv.hostPlatform.system}.devkit; [ + git + lazygit + neovim + starship + tmux + yazi + zellij + zsh + ]); + + programs.zsh.enable = true; + users.users.root.shell = self.packages.${pkgs.stdenv.hostPlatform.system}.devkit.zsh; + + environment.etc."nixos" = { + mode = "0600"; + source = ../..; + }; + + # Locale + time.timeZone = "America/Sao_Paulo"; + i18n.defaultLocale = "en_US.UTF-8"; + i18n.extraLocaleSettings = let + locale = "pt_BR.UTF-8"; + in { + LC_ADDRESS = locale; + LC_IDENTIFICATION = locale; + LC_MEASUREMENT = locale; + LC_MONETARY = locale; + LC_NAME = locale; + LC_NUMERIC = locale; + LC_PAPER = locale; + LC_TELEPHONE = locale; + LC_TIME = locale; + }; + + # Keyboard + services.xserver.xkb.layout = "br"; + console.keyMap = "br-abnt2"; + + # QMK keyboard + hardware.keyboard.qmk.enable = true; + services.udev.packages = with pkgs; [via vial]; + + # Nix + nix.settings.experimental-features = ["nix-command" "flakes"]; + + nixpkgs.config.allowUnfreePredicate = pkg: + builtins.elem (lib.getName pkg) [ + "via" + ]; + + # This value determines the NixOS release from which the default + # settings for stateful data, like file locations and database versions + # on your system were taken. It's perfectly fine and recommended to leave + # this value at the release version of the first install of this system. + # Before changing this value read the documentation for this option + # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). + system.stateVersion = "24.11"; # Did you read the comment? +} diff --git a/static/infiltrator.png b/static/infiltrator.png new file mode 100644 index 0000000..2d18d93 Binary files /dev/null and b/static/infiltrator.png differ diff --git a/static/infiltrator.txt b/static/infiltrator.txt new file mode 100644 index 0000000..a29e733 --- /dev/null +++ b/static/infiltrator.txt @@ -0,0 +1,25 @@ +                                                   +                                                   +                                                   +                                                   +                                 :~>>i!I,          +                           '>><~][iIl!iI?>,        +                   ;111({[?_<!>lllIII::,;l/~"      +                 ![f)1j{-{[[?--!^'"""~_Il!>}))[`   +               .__{({[]}{1{[]_})/t}]]_-~il;,><<(.  +              I1}11>i-{{[_+~?1|/f\_--\{>lll!:I,~)" +  ..    -~~<-\Xxt+:!]}-<>>il~-?<;l!"`<+!^,,,,:<;{{ +l?{<i<~_\I>fJJf!:]jj1~i>il;:",^:I,::,;:iiII^^^I[)l +{~^l~:;:^"+Uc<>fZC|~iiiI,"^```^l>,`IIl;+_;:;"l[I   +?-,il;I>+l;;^I1v)llil,",,;II,^^^`^Il;!>;I~_>>+     +i_~-iil,:l]n?;"^";`'^lI;iillI,^^^^,i+1{<<I         +           }(~>_/)]{)/~l,"""`'":I<<l..             +             ,[{-[(]l,I:,,^,l<<ll'                 +           . {[::iI^;:",";>+!`                     +             '+[["^;>"}~ii:                        +                fIIl<-:                            +                "~>!l                              +                                                   +                                                   +                                                   +