Compare commits

...

24 Commits

Author SHA1 Message Date
228e26c760 Update homebrew.nix 2026-03-06 11:46:31 -07:00
5ec65a4cb3 Update flake.lock 2026-03-05 10:43:45 -07:00
186d3e8215 Updated to fix "Broken" librewolf 2026-03-05 10:41:57 -07:00
d96734a5d5 updates 2026-03-04 09:32:47 -07:00
8cdc437607 Update homebrew.nix 2026-03-02 00:04:42 -07:00
dfd71d36f9 Update homebrew.nix 2026-03-02 00:03:12 -07:00
96f57cadc7 Oops 2026-02-23 15:00:03 -07:00
e4a7b92aa8 Updated lockfile 2026-02-23 14:51:01 -07:00
661d5c6a96 Fix 2026-02-22 11:11:25 -07:00
69c5cc9060 Update flake.lock 2026-02-22 11:04:59 -07:00
4f3d072474 Update librewolf.nix 2026-02-22 11:04:03 -07:00
32616dbb8d Disable auto update for Zed 2026-02-17 18:34:44 -07:00
062dd6fc45 Added zed plugins 2026-02-16 23:53:39 -07:00
27d15ba706 Added nixd 2026-02-16 23:36:45 -07:00
dfd6f9a8c1 Added nil 2026-02-16 23:36:04 -07:00
0acff538a3 Update librewolf.nix 2026-02-16 23:33:55 -07:00
d93b8d58c8 Added background for librewolf 2026-02-16 23:32:09 -07:00
7885e7090c Cleaned up old packages I dont need 2026-02-16 23:26:37 -07:00
0191b8e1e5 Update search engines 2026-02-16 20:33:51 -07:00
13eabb2a4e Changed the command to match lavitz 2026-02-16 16:20:48 -07:00
5ee18a2d47 Librewolf is complete! 2026-02-16 16:19:02 -07:00
a558c558f0 Ok finally 2026-02-16 16:08:23 -07:00
ba6d171055 Update librewolf.nix 2026-02-16 15:57:13 -07:00
7b87de4700 Update librewolf.nix 2026-02-16 15:53:48 -07:00
12 changed files with 110 additions and 100 deletions

View File

@@ -1,4 +1,10 @@
.PHONY: nix\:build .PHONY: build update lock
nix\:build: build:
sudo darwin-rebuild switch --flake .#dart sudo darwin-rebuild switch --flake .#dart
update:
nix flake update
lock:
nix flake lock

6
README.md Normal file
View File

@@ -0,0 +1,6 @@
# Lavitz - My NixOS desktop configuration named after Dart from the PS1 classic The Legend of Dragoon
- Nix Version: 25.11
- OS: MacOS
- Browser: Librewolf
- Terminal: Ghostty

24
flake.lock generated
View File

@@ -7,11 +7,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771269455, "lastModified": 1772633327,
"narHash": "sha256-BZ31eN5F99YH6vkc4AhzKGE+tJgJ52kl8f01K7wCs8w=", "narHash": "sha256-jl+DJB2DUx7EbWLRng+6HNWW/1/VQOnf0NsQB4PlA7I=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "5f1d42a97b19803041434f66681d5c44c9ae62e3", "rev": "5a75730e6f21ee624cbf86f4915c6e7489c74acc",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -27,11 +27,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1770922915, "lastModified": 1772379624,
"narHash": "sha256-6J/JoK9iL7sHvKJcGW2KId2agaKv1OGypsa7kN+ZBD4=", "narHash": "sha256-NG9LLTWlz4YiaTAiRGChbrzbVxBfX+Auq4Ab/SWmk4A=",
"owner": "LnL7", "owner": "LnL7",
"repo": "nix-darwin", "repo": "nix-darwin",
"rev": "6c5a56295d2a24e43bcd8af838def1b9a95746b2", "rev": "52d061516108769656a8bd9c6e811c677ec5b462",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -42,11 +42,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1771177547, "lastModified": 1772674223,
"narHash": "sha256-trTtk3WTOHz7hSw89xIIvahkgoFJYQ0G43IlqprFoMA=", "narHash": "sha256-/suKbHSaSmuC9UY7G0VRQ3aO+QKqxAQPQ19wG7QNkF8=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "ac055f38c798b0d87695240c7b761b82fc7e5bc2", "rev": "66d9241e3dc2296726dc522e62dbfe89c7b449f3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -71,11 +71,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771211437, "lastModified": 1772679930,
"narHash": "sha256-lcNK438i4DGtyA+bPXXyVLHVmJjYpVKmpux9WASa3ro=", "narHash": "sha256-FxYmdacqrdDVeE9QqZKTIpNLjv2B8GSKssgwlZuTR98=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "c62195b3d6e1bb11e0c2fb2a494117d3b55d410f", "rev": "9b741db17141331fdb26270a1b66b81be8be9edd",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@@ -40,7 +40,6 @@
./modules/packages/cli.nix ./modules/packages/cli.nix
./modules/packages/languages.nix ./modules/packages/languages.nix
./modules/packages/media.nix ./modules/packages/media.nix
./modules/packages/security.nix
./modules/packages/networking.nix ./modules/packages/networking.nix
./modules/homebrew.nix ./modules/homebrew.nix
./modules/librewolf.nix ./modules/librewolf.nix

View File

@@ -16,9 +16,12 @@
"vue" "vue"
"latex" "latex"
"mermaid" "mermaid"
"docker"
"docker-compose"
]; ];
userSettings = { userSettings = {
auto_update = false;
icon_theme = "Catppuccin Macchiato"; icon_theme = "Catppuccin Macchiato";
title_bar = { title_bar = {
show_sign_in = false; show_sign_in = false;
@@ -43,7 +46,10 @@
}; };
languages = { languages = {
"Nix" = { "Nix" = {
language_servers = [ "nil" "nixd" ]; language_servers = [
"nil"
"nixd"
];
format_on_save = "on"; format_on_save = "on";
}; };
}; };

View File

@@ -10,6 +10,10 @@
cleanup = "zap"; cleanup = "zap";
}; };
taps = [
"supersonic-app/supersonic"
];
brews = [ brews = [
"gamdl" "gamdl"
"knock" "knock"
@@ -24,6 +28,8 @@
"ngrok" "ngrok"
"pearcleaner" "pearcleaner"
"zed" "zed"
"supersonic"
"calibre"
]; ];
}; };
} }

View File

@@ -1,12 +1,14 @@
{ pkgs, ... }: { pkgs, ... }:
let let
policiesJson = builtins.toJSON { policies = {
policies = { policies = {
DisableTelemetry = true; DisableTelemetry = true;
DisableFirefoxStudies = true; DisableFirefoxStudies = true;
DisablePocket = true; DisablePocket = true;
DisableFirefoxAccounts = true; DisableFirefoxAccounts = true;
OfferToSaveLogins = false;
EnableTrackingProtection = true;
FirefoxHome = { FirefoxHome = {
Search = true; Search = true;
@@ -26,6 +28,35 @@ let
OfflineApps = true; OfflineApps = true;
}; };
SearchEngines = {
Default = "Searx Search";
Remove = [
"Google"
"Bing"
"Perplexity"
"Wikipedia (en)"
];
Add = [
{
Name = "Searx Search";
URLTemplate = "https://search.atri.dad/search?q={searchTerms}";
Method = "GET";
IconURL = "https://search.atri.dad/favicon.ico";
Alias = "searx";
Description = "Searx (search.atri.dad)";
}
{
Name = "DuckDuckGo";
URLTemplate = "https://duckduckgo.com/?q={searchTerms}";
SuggestURLTemplate = "https://duckduckgo.com/ac/?q={searchTerms}&type=list";
Method = "GET";
IconURL = "https://duckduckgo.com/favicon.ico";
Alias = "ddg";
Description = "DuckDuckGo";
}
];
};
ExtensionSettings = { ExtensionSettings = {
"{446900e4-71c2-419f-a6a7-df9c091e268b}" = { "{446900e4-71c2-419f-a6a7-df9c091e268b}" = {
install_url = "https://addons.mozilla.org/firefox/downloads/latest/bitwarden-password-manager/latest.xpi"; install_url = "https://addons.mozilla.org/firefox/downloads/latest/bitwarden-password-manager/latest.xpi";
@@ -39,71 +70,44 @@ let
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi"; install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
installation_mode = "force_installed"; installation_mode = "force_installed";
}; };
"{15cb5e64-94bd-41aa-91cf-751bb1a84972}" = {
install_url = "https://addons.mozilla.org/firefox/downloads/latest/catppuccin-macchiato-lavender2/latest.xpi";
installation_mode = "force_installed";
};
}; };
Preferences = { Preferences = {
"browser.startup.homepage" = { "browser.startup.homepage" = "about:home";
Value = "about:home"; "extensions.autoDisableScopes" = 0;
Status = "locked"; "browser.toolbars.bookmarks.visibility" = "always";
}; "network.cookie.cookieBehavior" = 1;
"extensions.autoDisableScopes" = { "extensions.activeThemeID" = "firefox-alpenglow@mozilla.org";
Value = 0; "privacy.resistFingerprinting" = true;
Status = "locked"; "browser.ml.chat.enabled" = false;
}; "browser.ml.chat.sidebar" = false;
"browser.toolbars.bookmarks.visibility" = { "browser.tabs.groups.smart.userEnabled" = false;
Value = "always"; "browser.safebrowsing.malware.enabled" = false;
Status = "locked"; "browser.safebrowsing.phishing.enabled" = false;
}; "browser.safebrowsing.blockedURIs.enabled" = false;
"network.cookie.cookieBehavior" = { "browser.safebrowsing.downloads.enabled" = false;
Value = 1; "browser.safebrowsing.provider.google4.gethashURL" = "";
Status = "locked"; "browser.safebrowsing.provider.google4.updateURL" = "";
}; "browser.safebrowsing.provider.google.gethashURL" = "";
"privacy.clearOnShutdown.cookies" = { "browser.safebrowsing.provider.google.updateURL" = "";
Value = false; "browser.newtabpage.activity-stream.newtabWallpapers.wallpaper" = "dark-mountain";
Status = "locked";
};
"privacy.clearOnShutdown.history" = {
Value = false;
Status = "locked";
};
"sidebar.revamp" = {
Value = true;
Status = "locked";
};
"sidebar.verticalTabs" = {
Value = true;
Status = "locked";
};
"sidebar.main.tools" = {
Value = "bookmarks,history,tabs";
Status = "locked";
};
"sidebar.visibility" = {
Value = "always";
Status = "locked";
};
"extensions.activeThemeID" = {
Value = "{1d573fb2-437c-4440-9b7b-b72a3eaec105}";
Status = "locked";
};
}; };
}; };
}; };
policiesFile = pkgs.writeText "librewolf-policies.json" policiesJson; policiesFile = pkgs.writeText "librewolf-policies.json" (builtins.toJSON policies);
in in
{ {
system.activationScripts.postActivation.text = '' system.activationScripts.postActivation.text = ''
DIST_DIR="/Applications/LibreWolf.app/Contents/Resources/distribution" for APP_DIR in "/Applications/LibreWolf.app" "$HOME/Applications/LibreWolf.app"; do
if [ -d "/Applications/LibreWolf.app" ]; then if [ -d "$APP_DIR" ]; then
mkdir -p "$DIST_DIR" DIST_DIR="$APP_DIR/Contents/Resources/distribution"
cp ${policiesFile} "$DIST_DIR/policies.json" mkdir -p "$DIST_DIR"
chmod 644 "$DIST_DIR/policies.json" cp -f ${policiesFile} "$DIST_DIR/policies.json"
echo "LibreWolf policies applied." chmod 644 "$DIST_DIR/policies.json"
fi echo "Applied LibreWolf policies to $APP_DIR"
xattr -dr com.apple.quarantine /Applications/LibreWolf.app
fi
done
''; '';
} }

View File

@@ -4,23 +4,13 @@
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
helix helix
micro micro
lazygit
ripgrep
fnm fnm
cmake cmake
ninja
gradle gradle
netcat-gnu netcat-gnu
bitwarden-cli bitwarden-cli
pwgen
qrencode qrencode
sl sl
upx upx
wakeonlan
magic-wormhole
httpie
gh
doctl
qemu
]; ];
} }

View File

@@ -2,7 +2,10 @@
let let
rustToolchain = pkgs.rust-bin.stable.latest.default.override { rustToolchain = pkgs.rust-bin.stable.latest.default.override {
extensions = [ "rust-src" "rust-analyzer" ]; extensions = [
"rust-src"
"rust-analyzer"
];
targets = [ "aarch64-apple-darwin" ]; targets = [ "aarch64-apple-darwin" ];
}; };
in in
@@ -12,10 +15,9 @@ in
python313 python313
openjdk openjdk
openjdk17 openjdk17
lua
luajit
perl
ruby ruby
go go
nil
nixd
]; ];
} }

View File

@@ -3,7 +3,6 @@
{ {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
ffmpeg ffmpeg
tesseract
tectonic tectonic
]; ];
} }

View File

@@ -2,7 +2,9 @@
{ {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
freerdp nmap
openmpi nikto
john
rustscan
]; ];
} }

View File

@@ -1,10 +0,0 @@
{ pkgs, ... }:
{
environment.systemPackages = with pkgs; [
nmap
nikto
john
rustscan
];
}