Initial commit
This commit is contained in:
69
flake.lock
generated
Normal file
69
flake.lock
generated
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"nix-darwin": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1770922915,
|
||||||
|
"narHash": "sha256-6J/JoK9iL7sHvKJcGW2KId2agaKv1OGypsa7kN+ZBD4=",
|
||||||
|
"owner": "LnL7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"rev": "6c5a56295d2a24e43bcd8af838def1b9a95746b2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "LnL7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1771177547,
|
||||||
|
"narHash": "sha256-trTtk3WTOHz7hSw89xIIvahkgoFJYQ0G43IlqprFoMA=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "ac055f38c798b0d87695240c7b761b82fc7e5bc2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"nix-darwin": "nix-darwin",
|
||||||
|
"nixpkgs": "nixpkgs",
|
||||||
|
"rust-overlay": "rust-overlay"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rust-overlay": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1771211437,
|
||||||
|
"narHash": "sha256-lcNK438i4DGtyA+bPXXyVLHVmJjYpVKmpux9WASa3ro=",
|
||||||
|
"owner": "oxalica",
|
||||||
|
"repo": "rust-overlay",
|
||||||
|
"rev": "c62195b3d6e1bb11e0c2fb2a494117d3b55d410f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "oxalica",
|
||||||
|
"repo": "rust-overlay",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
||||||
165
flake.nix
Normal file
165
flake.nix
Normal file
@@ -0,0 +1,165 @@
|
|||||||
|
{
|
||||||
|
description = "dart — system configuration via nix-darwin";
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||||
|
|
||||||
|
nix-darwin = {
|
||||||
|
url = "github:LnL7/nix-darwin";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
rust-overlay = {
|
||||||
|
url = "github:oxalica/rust-overlay";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = { self, nixpkgs, nix-darwin, rust-overlay }:
|
||||||
|
let
|
||||||
|
system = "aarch64-darwin";
|
||||||
|
|
||||||
|
pkgs = import nixpkgs {
|
||||||
|
inherit system;
|
||||||
|
overlays = [ rust-overlay.overlays.default ];
|
||||||
|
config.allowUnfree = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
rustToolchain = pkgs.rust-bin.stable.latest.default.override {
|
||||||
|
extensions = [ "rust-src" "rust-analyzer" ];
|
||||||
|
targets = [ "aarch64-apple-darwin" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
# CLI
|
||||||
|
cliTools = with pkgs; [
|
||||||
|
# Editors
|
||||||
|
helix
|
||||||
|
micro
|
||||||
|
lazygit
|
||||||
|
ripgrep
|
||||||
|
|
||||||
|
# Build/dev tools
|
||||||
|
fnm
|
||||||
|
cmake
|
||||||
|
ninja
|
||||||
|
gradle
|
||||||
|
|
||||||
|
# Network
|
||||||
|
netcat-gnu
|
||||||
|
|
||||||
|
# Misc
|
||||||
|
bitwarden-cli
|
||||||
|
pwgen
|
||||||
|
qrencode
|
||||||
|
sl
|
||||||
|
upx
|
||||||
|
wakeonlan
|
||||||
|
magic-wormhole
|
||||||
|
httpie
|
||||||
|
gh
|
||||||
|
doctl
|
||||||
|
qemu
|
||||||
|
];
|
||||||
|
|
||||||
|
# Languages
|
||||||
|
languages = with pkgs; [
|
||||||
|
rustToolchain
|
||||||
|
python313
|
||||||
|
openjdk
|
||||||
|
openjdk17
|
||||||
|
lua
|
||||||
|
luajit
|
||||||
|
perl
|
||||||
|
ruby
|
||||||
|
go
|
||||||
|
];
|
||||||
|
|
||||||
|
# Media
|
||||||
|
media = with pkgs; [
|
||||||
|
ffmpeg
|
||||||
|
tesseract
|
||||||
|
tectonic
|
||||||
|
];
|
||||||
|
|
||||||
|
# Security
|
||||||
|
security = with pkgs; [
|
||||||
|
nmap
|
||||||
|
nikto
|
||||||
|
thc-hydra
|
||||||
|
john
|
||||||
|
exploitdb
|
||||||
|
rustscan
|
||||||
|
recon-ng
|
||||||
|
vectorscan
|
||||||
|
];
|
||||||
|
|
||||||
|
# Networking
|
||||||
|
networking = with pkgs; [
|
||||||
|
freerdp
|
||||||
|
openmpi
|
||||||
|
];
|
||||||
|
|
||||||
|
allPackages =
|
||||||
|
cliTools
|
||||||
|
++ languages
|
||||||
|
++ media
|
||||||
|
++ security
|
||||||
|
++ networking;
|
||||||
|
|
||||||
|
in
|
||||||
|
{
|
||||||
|
darwinConfigurations."dart" = nix-darwin.lib.darwinSystem {
|
||||||
|
inherit system;
|
||||||
|
modules = [
|
||||||
|
{
|
||||||
|
nix.settings = {
|
||||||
|
experimental-features = [ "nix-command" "flakes" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
nixpkgs = {
|
||||||
|
hostPlatform = system;
|
||||||
|
config.allowUnfree = true;
|
||||||
|
overlays = [ rust-overlay.overlays.default ];
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = allPackages;
|
||||||
|
|
||||||
|
homebrew = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
onActivation = {
|
||||||
|
autoUpdate = true;
|
||||||
|
cleanup = "none";
|
||||||
|
};
|
||||||
|
|
||||||
|
brews = [
|
||||||
|
"gamdl"
|
||||||
|
"knock"
|
||||||
|
"snort"
|
||||||
|
];
|
||||||
|
|
||||||
|
casks = [
|
||||||
|
"android-platform-tools"
|
||||||
|
"claude-code"
|
||||||
|
"flutter"
|
||||||
|
"ghostty"
|
||||||
|
"librewolf"
|
||||||
|
"ngrok"
|
||||||
|
"pearcleaner"
|
||||||
|
"zulu@17"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.zsh.enable = true;
|
||||||
|
system.stateVersion = 6;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
devShells.${system} = {
|
||||||
|
default = pkgs.mkShell {
|
||||||
|
packages = allPackages;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user