Compare commits

..

No commits in common. "b35ce8ea00ef363f4cc8c052f64b0333bafa9c13" and "eebef11a58a436c347c7b86d32bbf8a2c60c5252" have entirely different histories.

5 changed files with 94 additions and 475 deletions

114
flake.lock generated
View file

@ -45,27 +45,6 @@
"type": "github"
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": [
"nur",
"nixpkgs"
]
},
"locked": {
"lastModified": 1733312601,
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
@ -94,11 +73,11 @@
]
},
"locked": {
"lastModified": 1743808813,
"narHash": "sha256-2lDQBOmlz9ggPxcS7/GvcVdzXMIiT+PpMao6FbLJSr0=",
"lastModified": 1739757849,
"narHash": "sha256-Gs076ot1YuAAsYVcyidLKUMIc4ooOaRGO0PqTY7sBzA=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "a9f8b3db211b4609ddd83683f9db89796c7f6ac6",
"rev": "9d3d080aec2a35e05a15cedd281c2384767c2cfe",
"type": "github"
},
"original": {
@ -115,11 +94,11 @@
]
},
"locked": {
"lastModified": 1743127615,
"narHash": "sha256-+sMGqywrSr50BGMLMeY789mSrzjkoxZiu61eWjYS/8o=",
"lastModified": 1741126078,
"narHash": "sha256-ng0a4cIq3c9E3iGKomlwqKzVYs2RLOzQho2U1Mc2sqU=",
"owner": "LnL7",
"repo": "nix-darwin",
"rev": "fc843893cecc1838a59713ee3e50e9e7edc6207c",
"rev": "c172f50b55b087f8e7801631de977461603bb976",
"type": "github"
},
"original": {
@ -131,11 +110,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1743891346,
"narHash": "sha256-QNxnxIi6PJEnwJp7ZXUpxX4/z/cmRJGeIOkIYfYh/8E=",
"lastModified": 1741838297,
"narHash": "sha256-0etyrY6jOzFwVILODzMc43MTtUanxzFSaqe3kVLvew4=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "f27c6099cec4fe9b67c7fbc51d8324dcb4b52694",
"rev": "80b53fdb4f883238807ced86db41be809d60f3b5",
"type": "github"
},
"original": {
@ -147,11 +126,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1743938762,
"narHash": "sha256-UgFYn8sGv9B8PoFpUfCa43CjMZBl1x/ShQhRDHBFQdI=",
"lastModified": 1741865919,
"narHash": "sha256-4thdbnP6dlbdq+qZWTsm4ffAwoS8Tiq1YResB+RP6WE=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "74a40410369a1c35ee09b8a1abee6f4acbedc059",
"rev": "573c650e8a14b2faa0041645ab18aed7e60f0c9a",
"type": "github"
},
"original": {
@ -161,59 +140,13 @@
"type": "github"
}
},
"nur": {
"inputs": {
"flake-parts": "flake-parts",
"nixpkgs": [
"nixpkgs"
],
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1744170471,
"narHash": "sha256-IOo5/Y7SagmCLFAVG6SGcre4XtRlJDz/61BaqBQCrQQ=",
"owner": "nix-community",
"repo": "NUR",
"rev": "8f5c2432968936b78f9e42ec0ed82167bd1a3bd7",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "NUR",
"type": "github"
}
},
"root": {
"inputs": {
"agenix": "agenix",
"home-manager": "home-manager_2",
"nix-darwin": "nix-darwin",
"nixpkgs": "nixpkgs",
"nixpkgs-unstable": "nixpkgs-unstable",
"nur": "nur",
"rycee-nurpkgs": "rycee-nurpkgs"
}
},
"rycee-nurpkgs": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"dir": "pkgs/firefox-addons",
"lastModified": 1744140214,
"narHash": "sha256-iZIA22PlVXMbBA3Df/SmbVj45CiikSofrSCwVT+xNYU=",
"owner": "rycee",
"repo": "nur-expressions",
"rev": "8d9af93d292ef141354d32a91dca041ce324b109",
"type": "gitlab"
},
"original": {
"dir": "pkgs/firefox-addons",
"owner": "rycee",
"repo": "nur-expressions",
"type": "gitlab"
"nixpkgs-unstable": "nixpkgs-unstable"
}
},
"systems": {
@ -230,27 +163,6 @@
"repo": "default",
"type": "github"
}
},
"treefmt-nix": {
"inputs": {
"nixpkgs": [
"nur",
"nixpkgs"
]
},
"locked": {
"lastModified": 1733222881,
"narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "49717b5af6f80172275d47a418c9719a31a78b53",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
}
},
"root": "root",

121
flake.nix
View file

@ -17,63 +17,102 @@
url = "github:LnL7/nix-darwin/nix-darwin-24.11";
inputs.nixpkgs.follows = "nixpkgs";
};
rycee-nurpkgs = {
url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";
inputs.nixpkgs.follows = "nixpkgs";
};
nur = {
url = "github:nix-community/NUR";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nix-darwin, nixpkgs, nixpkgs-unstable, home-manager, agenix
, rycee-nurpkgs, nur, ... }:
let
mkHomeConfiguration = { hostname, arch ? "x86_64", os ? "linux"
, desktop ? false, extraModules ? [ ] }:
let
system = "${arch}-${os}";
, ... }: {
homeConfigurations = {
"millironx@corianne" = home-manager.lib.homeManagerConfiguration {
pkgs = import nixpkgs {
system = "aarch64-darwin";
config.allowUnfree = true;
};
# Specify your home configuration modules here, for example,
# the path to your home.nix.
modules = [
./homes/common.nix
./homes/darwin.nix
./homes/desktop.nix
./homes/corianne.nix
agenix.homeManagerModules.default
];
# Optionally use extraSpecialArgs
# to pass through arguments to home.nix
extraSpecialArgs = {
pkgs-unstable = import nixpkgs-unstable {
system = "aarch64-darwin";
config.allowUnfree = true;
};
};
};
"millironx@anderson" = let
system = "x86_64-linux";
config = { allowUnfree = true; };
pkgs = import nixpkgs {
inherit system;
config.allowUnfree = true;
overlays = [ nur.overlays.default ];
inherit config;
};
pkgs-unstable = import nixpkgs-unstable {
pkg-unstable = import nixpkgs-unstable {
inherit system;
config.allowUnfree = true;
inherit config;
};
firefox-addons = pkgs.nur.repos.rycee.firefox-addons;
inherit (rycee-nurpkgs.lib.${system}) buildFirefoxXpiAddon;
in home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [
./homes/common.nix
./homes/${os}.nix
./homes/${hostname}.nix
./homes/linux.nix
./homes/anderson.nix
agenix.homeManagerModules.default
] ++ (if desktop then [ ./homes/desktop.nix ] else [ ])
++ extraModules;
extraSpecialArgs = {
inherit pkgs-unstable;
inherit firefox-addons;
inherit buildFirefoxXpiAddon;
};
};
in {
homeConfigurations = {
"millironx@corianne" = mkHomeConfiguration {
hostname = "corianne";
arch = "aarch64";
os = "darwin";
desktop = true;
];
extraSpecialArgs = { inherit pkg-unstable; };
};
"millironx@anderson" = mkHomeConfiguration { hostname = "anderson"; };
"millironx@bosephus" = let
system = "x86_64-linux";
config = { allowUnfree = true; };
pkgs = import nixpkgs {
inherit system;
inherit config;
};
pkg-unstable = import nixpkgs-unstable {
inherit system;
inherit config;
};
in home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [
./homes/common.nix
./homes/linux.nix
./homes/bosephus.nix
agenix.homeManagerModules.default
];
extraSpecialArgs = { inherit pkg-unstable; };
};
"millironx@bosephus" = mkHomeConfiguration { hostname = "bosephus"; };
"tchristensen@beocat" = mkHomeConfiguration { hostname = "beocat"; };
"tchristensen@beocat" = let
system = "x86_64-linux";
config = { allowUnfree = true; };
pkgs = import nixpkgs {
inherit system;
inherit config;
};
pkg-unstable = import nixpkgs-unstable {
inherit system;
inherit config;
};
in home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [
./homes/common.nix
./homes/linux.nix
./homes/beocat.nix
agenix.homeManagerModules.default
];
extraSpecialArgs = { inherit pkg-unstable; };
};
};
darwinConfigurations."corianne" = nix-darwin.lib.darwinSystem {

View file

@ -1,24 +1,14 @@
{ config, lib, pkgs, pkgs-unstable, firefox-addons, buildFirefoxXpiAddon, ... }:
{ config, lib, pkgs, pkgs-unstable, ... }:
let
packages = import ./../pkgs.nix {
inherit pkgs;
inherit pkgs-unstable;
};
firefox-config = import ./../programs/firefox.nix;
zed-config = import ./../programs/zed.nix;
in {
home = {
packages = packages.desktop;
shellAliases = { code = "codium"; };
};
programs = {
firefox = firefox-config {
inherit firefox-addons;
inherit buildFirefoxXpiAddon;
inherit lib;
};
zed-editor = zed-config;
};
services = {
gpg-agent = {
enable = true;

View file

@ -1,276 +0,0 @@
{ firefox-addons, buildFirefoxXpiAddon, lib }: {
enable = true;
package =
null; # Use native package manager/Homebrew b/c there are fewer breakages
profiles = {
"millironx-default" = {
id = 0;
containers = {
"Personal" = {
id = 1;
color = "blue";
icon = "fingerprint";
};
"Administrator" = {
id = 2;
color = "yellow";
icon = "briefcase";
};
"Kansas State CVM" = {
id = 3;
color = "purple";
icon = "pet";
};
"Kansas State" = {
id = 4;
color = "pink";
icon = "fruit";
};
"Bovine Club" = {
id = 5;
color = "turquoise";
icon = "food";
};
"CVF" = {
id = 6;
color = "red";
icon = "food";
};
"Swine Club" = {
id = 7;
color = "green";
icon = "food";
};
"Therio Club" = {
id = 8;
color = "orange";
icon = "food";
};
};
containersForce = true;
extensions = with firefox-addons; [
bitwarden
multi-account-containers
floccus
libredirect
old-reddit-redirect
plasma-integration
pwas-for-firefox
ublock-origin
web-archives
zotero-connector
(buildFirefoxXpiAddon rec {
pname = "always_in_container";
version = "1.0.7";
addonId = "{a1e9543e-5f73-4763-b376-04e53fd12cbd}";
url =
"https://addons.mozilla.org/firefox/downloads/file/4032840/${pname}-${version}.xpi";
sha256 = "sha256-bLxjL2P6Sd06q98MSHYRTNigtcjGwn/C2r4ANWCqKrw=";
meta = with lib; {
homepage = "https://github.com/tiansh/always-in-container";
description =
"Chose a container every time you try to open a page out of a container";
license = licenses.mpl20;
platforms = platforms.all;
};
})
(buildFirefoxXpiAddon rec {
pname = "open_with";
version = "7.2.6";
addonId = "openwith@darktrojan.net";
url =
"https://addons.mozilla.org/firefox/downloads/file/3831723/${pname}-${version}.xpi";
sha256 = "sha256-f9eGhLxg4UyVn4o5e4DRkraLWzj11SGto/GOwsJa9kg=";
meta = with lib; {
homepage = "https://darktrojan.github.io/openwith/";
description =
"Quickly test out your web pages in Chrome, Edge, Safari, or Opera. Open With opens the current page in your other browsers with just two clicks.";
license = licenses.mpl20;
platforms = platforms.all;
};
})
];
search = {
default = "Milliron X Search";
privateDefault = "Milliron X Search";
force = true;
engines = {
"Milliron X Search" = {
urls = [
{
rels = [ "results" ];
type = "text/html";
method = "GET";
template =
"https://search.millironx.com/search?q={searchTerms}";
}
{
rels = [ "suggestions" ];
type = "application/x-suggestions+json";
method = "GET";
template =
"https://search.millironx.com/autocompleter?q={searchTerms}";
}
];
iconUpdateURL =
"https://search.millironx.com/static/themes/simple/img/favicon.png";
updateInterval = 24 * 60 * 60 * 1000; # every day
definedAliases = [ "@mxs" ];
};
"Perplexity" = {
urls =
[{ template = "https://www.perplexity.ai/?q={searchTerms}"; }];
icon = "https://www.perplexity.ai/favicon.ico";
updateInterval = 7 * 24 * 60 * 60 * 1000;
definedAliases = [ "@pxt" ];
};
};
};
settings = {
"app.normandy.first_run" = false;
"app.shield.optoutstudies.enabled" = false;
"browser.contentblocking.category" = "strict";
"browser.formfill.enable" = false;
"browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons" =
false;
"browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features" =
false;
"browser.newtabpage.activity-stream.feeds.section.topstories" = false;
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
"browser.newtabpage.activity-stream.showWeather" = false;
"browser.newtabpage.pinned" = [
{
url = "https://millironx.com";
label = "Home";
baseDomain = "millironx.com";
}
{
url = "https://nextcloud.millironx.com";
label = "Nextcloud";
baseDomain = "nextcloud.millironx.com";
}
{
url = "https://code.millironx.com";
label = "Code";
baseDomain = "code.millironx.com";
}
{
url = "https://video.millironx.com";
label = "Videos";
baseDomain = "video.millironx.com";
}
{
url = "https://photos.millironx.com";
label = "Photos";
baseDomain = "photos.millironx.com";
}
{
url = "https://vault.millironx.com";
label = "Vault";
baseDomain = "vault.millironx.com";
}
{
url = "https://www.perplexity.ai/";
label = "perplexity";
}
{
url =
"https://www.vet.k-state.edu/academics/student-faculty-handbook/";
}
];
"browser.shopping.experience2023.active" = false;
"browser.startup.homepage_override.mstone" = "ignore";
"browser.tabs.closeWindowWithLastTab" = false;
"browser.tabs.inTitlebar" = 0;
"browser.theme.content-theme" = 0;
"browser.theme.toolbar-theme" = 0;
"browser.toolbars.bookmarks.visibility" = "never";
"browser.uiCustomization.state" = {
placements = {
"widget-overflow-fixed-list" = [ ];
"unified-extensions-area" = [
"floccus_handmadeideas_org-browser-action"
"7esoorv3_alefvanoon_anonaddy_me-browser-action"
"plasma-browser-integration_kde_org-browser-action"
"firefoxpwa_filips_si-browser-action"
"_d07ccf11-c0cd-4938-a265-2a4d6ad01189_-browser-action" # Web Archives
"openwith_darktrojan_net-browser-action"
"zotero_chnm_gmu_edu-browser-action"
];
"nav-bar" = [
"back-button"
"forward-button"
"customizableui-special-spring1"
"vertical-spacer"
"urlbar-container"
"stop-reload-button"
"customizableui-special-spring2"
"downloads-button"
"_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action" # Bitwarden
"ublock0_raymondhill_net-browser-action"
"unified-extensions-button"
"_testpilot-containers-browser-action"
];
"TabsToolbar" = [
"firefox-view-button"
"tabbrowser-tabs"
"new-tab-button"
"alltabs-button"
];
"vertical-tabs" = [ ];
"PersonalToolbar" = [ "import-button" "personal-bookmarks" ];
};
seen = [
"save-to-pocket-button"
"developer-button"
"_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action"
"_testpilot-containers-browser-action"
"floccus_handmadeideas_org-browser-action"
"7esoorv3_alefvanoon_anonaddy_me-browser-action"
"plasma-browser-integration_kde_org-browser-action"
"firefoxpwa_filips_si-browser-action"
"ublock0_raymondhill_net-browser-action"
"_d07ccf11-c0cd-4938-a265-2a4d6ad01189_-browser-action"
"zotero_chnm_gmu_edu-browser-action"
"openwith_darktrojan_net-browser-action"
];
dirtyAreaCache = [
"nav-bar"
"vertical-tabs"
"PersonalToolbar"
"unified-extensions-area"
];
currentVersion = 21;
newElementCount = 3;
};
"browser.urlbar.suggest.showSearchSuggestionsFirst" = false;
"browser.urlbar.suggest.quicksuggest.nonsponsored" = false;
"browser.urlbar.suggest.quicksuggest.sponsored" = false;
"browser.urlbar.suggest.quicksuggest.trending" = false;
"browser.warnOnQuitShortcut" = false;
"datareporting.healthreport.uploadEnabled" = false;
"datareporting.usage.uploadEnabled" = false;
"extensions.formautofill.addresses.enabled" = false;
"extensions.formautofill.creditCards.enabled" = false;
"extensions.autoDisableScopes" = 0;
"network.trr.mode" = 3; # DNS over HTTPS always
"network.trr.uri" = "https://family.dns.mullvad.net/dns-query";
"network.trr.custom_uri" = "https://family.dns.mullvad.net/dns-query";
"privacy.bounceTrackingProtection.mode" = 1;
"privacy.clearOnShutdown_v2.browsingHistoryAndDownloads" = false;
"privacy.clearOnShutdown_v2.cache" = true;
"privacy.clearOnShutdown_v2.cookiesAndStorage" = true;
"privacy.clearOnShutdown_v2.formdata" = true;
"privacy.clearOnShutdown_v2.historyFormDataAndDownloads" = false;
"privacy.history.custom" = true;
"privacy.query_stripping.enabled" = true;
"privacy.sanitize.clearOnShutdown.hasMigratedToNewPrefs3" = true;
"privacy.sanitize.sanitizeOnShutdown" = true;
"privacy.trackingprotection.emailtracking.enabled" = true;
"privacy.trackingprotection.enabled" = true;
"privacy.trackingprotection.socialtracking.enabled" = true;
"widget.use-xdg-desktop-portal.file-picker" = 1;
};
};
};
}

View file

@ -1,46 +0,0 @@
{
enable = true;
extensions = [
"basher"
"clojure"
"cspell"
"dockerfile"
"earthfile"
"git-firefly"
"html"
"julia"
"latex"
"macos-classic"
"nix"
"toml"
"xml"
];
userSettings = {
assistant = {
default_model = {
provider = "zed.dev";
model = "claude-3-5-sonnet-latest";
};
version = "2";
};
buffer_font_family = "FiraCode Nerd Font";
buffer_font_size = 11;
features = { edit_prediction_provider = "zed"; };
languages = {
Nix = { formatter = { external = { command = "nixfmt"; }; }; };
};
preview_tabs = { enabled = false; };
ssh_connections = [{
host = "anderson";
projects = [{ paths = [ "/var/docker" ]; }];
}];
show_edit_predictions = false;
terminal = {
font_family = "MesloLGS NF";
font_size = 10;
};
theme = "macOS Classic Dark2";
ui_font_size = 16;
wrap_guides = [ 80 92 120 ];
};
}