Compare commits

..

3 commits

Author SHA1 Message Date
87f08c462a fc-scripts: init at 20260202
collection of useful scripts from the FlyingCircus crew
2026-02-18 18:36:47 +01:00
eab86cf718 unify overlays
We used to have overlay definitions in home/overlays and
packages/default. Let's unify them.
Using the exposed overlay from the flake required some changes in the
home-manager config though.
2026-02-18 18:36:16 +01:00
3160908c0b darwin: regularly run angrr as timer job 2026-02-18 16:39:25 +01:00
6 changed files with 197 additions and 159 deletions

View file

@ -27,6 +27,7 @@ in
sandbox = "relaxed";
};
};
services.angrr.timer.enable = true;
# List packages installed in system profile. To search by name, run:
# $ nix-env -qaP | grep wget

View file

@ -109,6 +109,7 @@
# Optionally use extraSpecialArgs
# to pass through arguments to home.nix
extraSpecialArgs = {
# XXX: can we use the inputInjection pattern here as well instead?
inherit inputs;
};
};

View file

@ -1,17 +1,19 @@
{
pkgs,
lib,
inputs,
config,
...
}:
with pkgs;
let
cfg = config.schmittlauch.packages;
unstable = inputs.nixos-unstable.legacyPackages.${stdenv.hostPlatform.system};
nur = inputs.nur.legacyPackages.${stdenv.hostPlatform.system};
unstable = inputs.nixos-unstable.legacyPackages.${pkgs.stdenv.hostPlatform.system};
nur = inputs.nur.legacyPackages.${pkgs.stdenv.hostPlatform.system};
graphicsApps = [
graphicsApps =
with pkgs;
[
inkscape
exiftool
]
@ -30,7 +32,9 @@ let
gimp2
];
multimediaApps = [
multimediaApps =
with pkgs;
[
mpv
]
++ lib.optionals pkgs.stdenv.isDarwin [ vlc-bin ]
@ -44,7 +48,9 @@ let
#nur.repos.fooker.studio-link
];
cliApps = [
cliApps =
with pkgs;
[
coreutils
myVim
htop
@ -78,6 +84,8 @@ let
spacer
nix-output-monitor # putting this here as a plain `nix` alternative
fc-scripts # this might turn out to be useful even in non-work environments?
]
++ lib.optionals pkgs.stdenv.isLinux [
xclip
@ -88,13 +96,15 @@ let
reptyr # re-bind running program to other tty
];
nixHelpers = [
nixHelpers = with pkgs; [
nixpkgs-review
nixfmt
nix-top
statix
];
devTools = [
devTools =
with pkgs;
[
curl
httpie
gcc
@ -117,7 +127,7 @@ let
zeal
];
pythonTools = with python3Packages; [
pythonTools = with pkgs.python3Packages; [
python # to shadow old macOS python
ipython
uv
@ -131,16 +141,16 @@ let
mypy
];
games = [
games = with pkgs; [
superTuxKart
#hedgewars
];
desktopCommon = [
desktopCommon = with pkgs; [
keepassxc
];
desktopLinux = [
desktopLinux = with pkgs; [
firefox
chromium
kdePackages.falkon
@ -187,7 +197,9 @@ let
chromedriver
];
kdeTools = [
kdeTools =
with pkgs;
[
okteta
]
++ (with kdePackages; [
@ -248,7 +260,7 @@ in
++ (lib.optional cfg.kde kdeTools)
);
nixpkgs.overlays = import ../overlays.nix;
nixpkgs.overlays = lib.attrValues inputs.self.overlays;
nixpkgs.config = {
permittedInsecurePackages = [

View file

@ -1,31 +0,0 @@
[
(self: super: {
myVim = super.neovim.override {
configure = {
packages.myVimPackage = with self.pkgs.vimPlugins; {
# loaded on start
start = [
ale
base16-vim
LanguageClient-neovim
ctrlp
direnv-vim
fugitive
haskell-vim
jedi-vim
nerdtree
nerdtree-git-plugin
supertab
vim-dirdiff
vim-pandoc
vim-pandoc-syntax
vim-nix
vim-jinja
which-key-nvim
];
};
customRC = builtins.readFile ./vimrc;
};
};
})
]

View file

@ -5,4 +5,32 @@ final: prev: {
spsdk = python-prev.spsdk.overridePythonAttrs { doCheck = false; };
};
};
fc-scripts = final.callPackage ./fc-scripts.nix { };
myVim = prev.neovim.override {
configure = {
packages.myVimPackage = with final.pkgs.vimPlugins; {
# loaded on start
start = [
ale
base16-vim
LanguageClient-neovim
ctrlp
direnv-vim
fugitive
haskell-vim
jedi-vim
nerdtree
nerdtree-git-plugin
supertab
vim-dirdiff
vim-pandoc
vim-pandoc-syntax
vim-nix
vim-jinja
which-key-nvim
];
};
customRC = builtins.readFile ../home/vimrc;
};
};
}

27
packages/fc-scripts.nix Normal file
View file

@ -0,0 +1,27 @@
{
fetchFromGitHub,
runCommand,
python3,
stdenvNoCC,
}:
stdenvNoCC.mkDerivation {
pname = "fc-scripts";
version = "20260202";
src = fetchFromGitHub {
owner = "flyingcircusio";
repo = "scripts";
rev = "887f066006829fc3ee44b3cfbe748c578ea2e7c1";
hash = "sha256-mrL/dULb0NKw8cH9ferzfDdRjhWANrWQg/u7FNCtzWw=";
};
buildInputs = [ python3 ];
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp *.py $out/bin/
runHook postInstall
'';
}