Compare commits

...

5 Commits

Author SHA1 Message Date
841c3b2fbd Lower attic push jobs
server be fragile
2026-03-27 21:58:05 +01:00
a3cccd8751 Add flake for newer clion 2026-03-27 21:57:52 +01:00
d9478157fb Update cache key
- due to cache reset
- add job number to push
2026-03-27 20:45:33 +01:00
599be0b0e5 Actually add /etc/nix as well 2026-03-27 19:32:51 +01:00
0a07190179 Add a service to automatically fetch devshells 2026-03-27 19:26:56 +01:00
8 changed files with 122 additions and 15 deletions

View File

@@ -12,8 +12,8 @@ build-laptop:
nix build .#nixosConfigurations.dalaptop.config.system.build.toplevel --log-format internal-json |& nom --json
upload:
attic push my-config result
attic push my-config /run/current-system
attic push my-config result -j2
attic push my-config /run/current-system -j2
clean:
rm -rf result
@@ -23,7 +23,7 @@ format:
treefmt .
switch:
nh os switch
nh os switch --refresh
switch_update:
nh os switch --refresh --update

View File

@@ -0,0 +1,30 @@
{
description = "Latest CLion from JetBrains";
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
outputs = {
self,
nixpkgs,
}: let
system = "x86_64-linux";
pkgs = import nixpkgs {
inherit system;
config = {
allowUnfree = true;
permittedInsecurePackages = [
"openssl-1.1.1w"
];
};
};
in {
packages.${system}.default = pkgs.jetbrains.clion.overrideAttrs (oldAttrs: rec {
version = "2026.1";
src = pkgs.fetchurl {
url = "https://download-cdn.jetbrains.com/cpp/CLion-${version}.tar.gz";
hash = "sha256-r5flY2u6aCkI8q7ZcGWYLLxxcWWp3gtTkdBdKoacIB0=";
};
buildInputs = oldAttrs.buildInputs ++ [pkgs.openssl_1_1];
});
};
}

View File

@@ -6,7 +6,7 @@
];
trusted-public-keys = [
"my-config:51aC90S8+3+gS/UzwdnL7a7lu1NnY896SZp5njMwFDk="
"my-config:hK+qaX2TdSrf/sp8LjKq9VF9XU0qGksoQCdgVXfgWoQ="
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
];

View File

@@ -3,6 +3,7 @@
./dconf
./desktop-files.nix
./starship.nix
./services.nix
./zsh.nix
];

View File

@@ -0,0 +1,41 @@
{pkgs, ...}: let
devShellsDir = "$HOME/.config/nix-shells";
nixConfigDir = "/etc/nixos";
syncScript = pkgs.writeShellScript "sync-all-repos" ''
repos=("${devShellsDir}" "${nixConfigDir}")
for repo in "''${repos[@]}"; do
echo "Syncing $repo..."
if ! ${pkgs.git}/bin/git -C "$repo" pull --rebase --autostash; then
${pkgs.libnotify}/bin/notify-send -u critical "Sync Failed" "Conflict or network error in $repo"
else
${pkgs.git}/bin/git -C "$repo" add -N . 2>/dev/null || true
fi
done
'';
in {
systemd.user.services.sync-nix-repos = {
Unit = {
Description = "Background sync for Nix Config and Dev Shells";
After = ["network-online.target"];
Wants = ["network-online.target"];
};
Service = {
Type = "oneshot";
ExecStart = "${syncScript}";
PassEnvironment = ["DBUS_SESSION_BUS_ADDRESS" "DISPLAY"];
};
};
systemd.user.timers.sync-nix-repos = {
Unit.Description = "Hourly sync for all Nix repositories";
Timer = {
OnBootSec = "2m";
OnUnitActiveSec = "1h";
Persistent = true;
};
Install.WantedBy = ["timers.target"];
};
}

View File

@@ -2,6 +2,7 @@
config,
pkgs,
lib,
clion-flake,
czkawka-master,
solaar-master,
fet,
@@ -15,6 +16,7 @@
"cisco-packet-tracer_9"
];
};
overlays = [
(final: prev: {
nautilus = prev.nautilus.overrideAttrs (nprev: {
@@ -91,7 +93,8 @@
iftop
inkscape
iotop
jetbrains.clion
#jetbrains.clion
clion-flake.packages.${pkgs.stdenv.hostPlatform.system}.default
jq
just
killall

49
flake.lock generated
View File

@@ -1,10 +1,24 @@
{
"nodes": {
"clion-flake": {
"inputs": {
"nixpkgs": "nixpkgs"
},
"locked": {
"path": "./common/flakes/clion-flake",
"type": "path"
},
"original": {
"path": "./common/flakes/clion-flake",
"type": "path"
},
"parent": []
},
"czkawka-master": {
"inputs": {
"czkawka-src": "czkawka-src",
"naersk": "naersk",
"nixpkgs": "nixpkgs"
"nixpkgs": "nixpkgs_2"
},
"locked": {
"path": "./common/flakes/czkawka-master",
@@ -58,7 +72,7 @@
"fet": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": "nixpkgs_2"
"nixpkgs": "nixpkgs_3"
},
"locked": {
"path": "./common/flakes/fet",
@@ -95,11 +109,11 @@
]
},
"locked": {
"lastModified": 1774539458,
"narHash": "sha256-H9GIOqdMfQZ6lFetsQhO9TCq53hYzpTHDWOt3PRh9V0=",
"lastModified": 1774626137,
"narHash": "sha256-1WelwA45Xm4glTG8R9IX9jYeFKDG2HbR79jAauLezUE=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "e2e5f512b33ed19a7a3271d0b73ed5eefcc0be5f",
"rev": "9df3a639007cfe0d074433f7fc225ea94f877d08",
"type": "github"
},
"original": {
@@ -179,11 +193,27 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1774509978,
"narHash": "sha256-hdl5+yPF2KXSpuFy6dTHe62c5hKiEAhd1fq8UagtTdQ=",
"lastModified": 1774386573,
"narHash": "sha256-4hAV26quOxdC6iyG7kYaZcM3VOskcPUrdCQd/nx8obc=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "b317a7eaabaea07be8c71aded8b266fddce0a181",
"rev": "46db2e09e1d3f113a13c0d7b81e2f221c63b8ce9",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_4": {
"locked": {
"lastModified": 1774612448,
"narHash": "sha256-+uVDNwxihd82I6aZTgNvIXqFyLcfUBkg/Y0A8UBgycg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "b55b0e0c856ac73c7f507336780f97aa7a9746e2",
"type": "github"
},
"original": {
@@ -195,11 +225,12 @@
},
"root": {
"inputs": {
"clion-flake": "clion-flake",
"czkawka-master": "czkawka-master",
"fet": "fet",
"home-manager": "home-manager",
"nix-flatpak": "nix-flatpak",
"nixpkgs": "nixpkgs_3"
"nixpkgs": "nixpkgs_4"
}
},
"rust-analyzer-src": {

View File

@@ -9,6 +9,7 @@
czkawka-master.url = "path:./common/flakes/czkawka-master";
fet.url = "path:./common/flakes/fet";
clion-flake.url = "path:./common/flakes/clion-flake";
};
outputs = {
@@ -18,7 +19,7 @@
home-manager,
...
} @ inputs: let
specialArgs = {inherit (inputs) czkawka-master fet;};
specialArgs = {inherit (inputs) czkawka-master fet clion-flake;};
in {
nixosConfigurations = {
epiquev2 = nixpkgs.lib.nixosSystem {