Merge branch 'main' of gh:greg-hellings/nixos-config
This commit is contained in:
Generated
+17
-17
@@ -274,6 +274,22 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nix23_05": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1702759837,
|
||||||
|
"narHash": "sha256-u3XeJVRe/Q975nwFE+6ALEwypMKJEELMJKDAhSKyq3M=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "b2566f4f897ac6224e094b167d9488d03e157f28",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-23.05",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixneovim": {
|
"nixneovim": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_2",
|
"flake-utils": "flake-utils_2",
|
||||||
@@ -372,22 +388,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpy311": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1698696950,
|
|
||||||
"narHash": "sha256-FHFL58t6lMumvWqwundC8fDDDLOIvc+JJBNIAlPjrDY=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "017ef2132a5bda50bd713aeabce8f918502d4ec1",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-23.05",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixstable": {
|
"nixstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1702233072,
|
"lastModified": 1702233072,
|
||||||
@@ -502,8 +502,8 @@
|
|||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
"hm": "hm",
|
"hm": "hm",
|
||||||
"hmunstable": "hmunstable",
|
"hmunstable": "hmunstable",
|
||||||
|
"nix23_05": "nix23_05",
|
||||||
"nixneovim": "nixneovim",
|
"nixneovim": "nixneovim",
|
||||||
"nixpy311": "nixpy311",
|
|
||||||
"nixstable": "nixstable",
|
"nixstable": "nixstable",
|
||||||
"nixunstable": "nixunstable",
|
"nixunstable": "nixunstable",
|
||||||
"nurpkgs": "nurpkgs",
|
"nurpkgs": "nurpkgs",
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
inputs.nixpkgs.follows = "nixstable";
|
inputs.nixpkgs.follows = "nixstable";
|
||||||
};
|
};
|
||||||
nixneovim.url = "github:NixNeovim/NixNeovim";
|
nixneovim.url = "github:NixNeovim/NixNeovim";
|
||||||
nixpy311.url = "github:NixOS/nixpkgs/nixos-23.05";
|
nix23_05.url = "github:NixOS/nixpkgs/nixos-23.05";
|
||||||
nixstable.url = "github:nixos/nixpkgs/nixos-23.11";
|
nixstable.url = "github:nixos/nixpkgs/nixos-23.11";
|
||||||
nixunstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
nixunstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
nurpkgs.url = "github:nix-community/NUR";
|
nurpkgs.url = "github:nix-community/NUR";
|
||||||
@@ -37,7 +37,7 @@
|
|||||||
hm,
|
hm,
|
||||||
hmunstable,
|
hmunstable,
|
||||||
nixneovim,
|
nixneovim,
|
||||||
nixpy311,
|
nix23_05,
|
||||||
nixstable,
|
nixstable,
|
||||||
nixunstable,
|
nixunstable,
|
||||||
nurpkgs,
|
nurpkgs,
|
||||||
@@ -48,7 +48,8 @@
|
|||||||
let
|
let
|
||||||
pkg-sets = (
|
pkg-sets = (
|
||||||
final: prev: {
|
final: prev: {
|
||||||
unstable = import inputs.nixunstable { system = final.system; };
|
unstable = import inputs.nixunstable { system = final.system; inherit overlays; };
|
||||||
|
nix23_05 = import inputs.nix23_05 { system = final.system; inherit overlays; };
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
local_overlay = import ./overlays;
|
local_overlay = import ./overlays;
|
||||||
|
|||||||
@@ -41,7 +41,6 @@
|
|||||||
gh
|
gh
|
||||||
git
|
git
|
||||||
gnupatch
|
gnupatch
|
||||||
gregpy
|
|
||||||
hms
|
hms
|
||||||
htop
|
htop
|
||||||
inetutils
|
inetutils
|
||||||
|
|||||||
@@ -1,10 +1,21 @@
|
|||||||
{ pkgs, lib, inputs, ...}:
|
{ pkgs, lib, inputs, ...}:
|
||||||
|
let
|
||||||
{
|
py = pkgs.nix23_05.python311.withPackages ( p: with p; [
|
||||||
|
django
|
||||||
|
djangorestframework
|
||||||
|
django-rapyd-modernauth
|
||||||
|
environs
|
||||||
|
#itg-django-utils
|
||||||
|
mysqlclient
|
||||||
|
ruamel-yaml
|
||||||
|
tox
|
||||||
|
]);
|
||||||
|
in {
|
||||||
imports = [
|
imports = [
|
||||||
../../vscodium.nix
|
../../vscodium.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
greg.pypackage = py;
|
||||||
home = {
|
home = {
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
aacs
|
aacs
|
||||||
@@ -13,7 +24,7 @@
|
|||||||
direnv
|
direnv
|
||||||
home-manager
|
home-manager
|
||||||
insomnia
|
insomnia
|
||||||
pipenv
|
pipenv-ivr
|
||||||
];
|
];
|
||||||
file.".pip/pip.conf".text = (lib.strings.concatStringsSep "\n" [
|
file.".pip/pip.conf".text = (lib.strings.concatStringsSep "\n" [
|
||||||
"[global]"
|
"[global]"
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./gnome.nix
|
./gnome.nix
|
||||||
|
./python.nix
|
||||||
./xonsh.nix
|
./xonsh.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,10 @@
|
|||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
{
|
||||||
|
options.greg.pypackage = lib.mkOption {
|
||||||
|
description = "Enable Gnome support and settings";
|
||||||
|
type = lib.types.package;
|
||||||
|
default = pkgs.gregpy;
|
||||||
|
};
|
||||||
|
|
||||||
|
config.home.packages = [ config.greg.pypackage ];
|
||||||
|
}
|
||||||
@@ -76,6 +76,7 @@ in
|
|||||||
|
|
||||||
greg.proxies = {
|
greg.proxies = {
|
||||||
"smart.home".target = "http://127.0.0.1:8123/";
|
"smart.home".target = "http://127.0.0.1:8123/";
|
||||||
|
"smart.thehellings.lan".target = "http://127.0.0.1:8123/";
|
||||||
"zwave.home".target = "http://127.0.0.1:8091/";
|
"zwave.home".target = "http://127.0.0.1:8091/";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ let
|
|||||||
"100.88.91.27 genesis.home jellyfin.home smart.home zwave.home"
|
"100.88.91.27 genesis.home jellyfin.home smart.home zwave.home"
|
||||||
"100.78.16.88 mm.home"
|
"100.78.16.88 mm.home"
|
||||||
"100.84.183.79 myself.home myself.shire-zebra.ts.net git.thehellings.lan"
|
"100.84.183.79 myself.home myself.shire-zebra.ts.net git.thehellings.lan"
|
||||||
|
"100.78.226.76 gitlab.home gitlab.shire-zebra.ts.net gitlab.thehellings.lan registry.thehellings.lan"
|
||||||
|
|
||||||
# Dev hosts
|
# Dev hosts
|
||||||
"10.42.101.1 icdm.lan wiki.icdm.lan *.icdm.lan"
|
"10.42.101.1 icdm.lan wiki.icdm.lan *.icdm.lan"
|
||||||
|
|||||||
@@ -12,6 +12,30 @@ in {
|
|||||||
proxy_set_header X-Forwarded-Ssl on;
|
proxy_set_header X-Forwarded-Ssl on;
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.haproxy = {
|
||||||
|
enable = true;
|
||||||
|
config = builtins.concatStringsSep "\n" [
|
||||||
|
"global"
|
||||||
|
" daemon"
|
||||||
|
" maxconn 20"
|
||||||
|
|
||||||
|
"defaults"
|
||||||
|
" timeout connect 500s"
|
||||||
|
" timeout client 500s"
|
||||||
|
" timeout server 1h"
|
||||||
|
|
||||||
|
"frontend gitsshd"
|
||||||
|
" bind *:2222"
|
||||||
|
" default_backend gitssh"
|
||||||
|
" timeout client 1h"
|
||||||
|
|
||||||
|
"backend gitssh"
|
||||||
|
" mode tcp"
|
||||||
|
" server git-thehellings-lan git.thehellings.lan:2222"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
##########################################################################################
|
##########################################################################################
|
||||||
###########
|
###########
|
||||||
# CI SERVICES
|
# CI SERVICES
|
||||||
|
|||||||
@@ -33,6 +33,8 @@ in rec {
|
|||||||
pythonPackagesExtensions = (prev.pythonPackagesExtensions or []) ++ [
|
pythonPackagesExtensions = (prev.pythonPackagesExtensions or []) ++ [
|
||||||
(python-final: python-prev: let cp = python-final.callPackage; in {
|
(python-final: python-prev: let cp = python-final.callPackage; in {
|
||||||
django-rapyd-modernauth = cp ./django-rapyd-modernauth.nix {};
|
django-rapyd-modernauth = cp ./django-rapyd-modernauth.nix {};
|
||||||
|
graypy = cp ./graypy.nix {};
|
||||||
|
itg-django-utils = cp ./itg-django-utils.nix {};
|
||||||
xonsh-apipenv = cp ./xonsh-apipenv.nix {};
|
xonsh-apipenv = cp ./xonsh-apipenv.nix {};
|
||||||
xonsh-direnv = cp ./xonsh-direnv.nix {};
|
xonsh-direnv = cp ./xonsh-direnv.nix {};
|
||||||
xontrib-vox = cp ./xonsh-vox.nix {};
|
xontrib-vox = cp ./xonsh-vox.nix {};
|
||||||
@@ -66,6 +68,7 @@ in rec {
|
|||||||
libvirt-greg = prev.libvirt.overrideAttrs {
|
libvirt-greg = prev.libvirt.overrideAttrs {
|
||||||
postInstall = prev.libvirt.postInstall + "rm -r $out/lib/systemd/system/libvirtd.service";
|
postInstall = prev.libvirt.postInstall + "rm -r $out/lib/systemd/system/libvirtd.service";
|
||||||
};
|
};
|
||||||
|
pipenv-ivr = prev.callPackage ./pipenv.nix { };
|
||||||
|
|
||||||
xonsh = prev.xonsh.overridePythonAttrs (old: rec{
|
xonsh = prev.xonsh.overridePythonAttrs (old: rec{
|
||||||
python3 = final.gregpy;
|
python3 = final.gregpy;
|
||||||
|
|||||||
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
buildPythonPackage,
|
||||||
|
fetchFromGitHub,
|
||||||
|
|
||||||
|
amqplib,
|
||||||
|
mock,
|
||||||
|
pytestCheckHook,
|
||||||
|
requests,
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "graypy";
|
||||||
|
version = "2.1.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "severb";
|
||||||
|
repo = "graypy";
|
||||||
|
rev = "2.1.0";
|
||||||
|
hash = "sha256-y1HbJEpqnAgOeB+zXKy3iUT6Lpv0bufjL7+jWUSAjFs=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeCheckInputs = [
|
||||||
|
amqplib
|
||||||
|
mock
|
||||||
|
pytestCheckHook
|
||||||
|
requests
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Python logging handlers that send messages in the Graylog Extended Log Format (GELF).";
|
||||||
|
homepage = "https://github.com/severb/graypy";
|
||||||
|
license = licenses.bsd3;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
buildPythonPackage,
|
||||||
|
fetchurl,
|
||||||
|
|
||||||
|
django,
|
||||||
|
djangorestframework,
|
||||||
|
graypy,
|
||||||
|
setuptools,
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "itg-django-utils";
|
||||||
|
version = "0.1.11";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://pypi.ivrtechnology.com/packages/itg-django-utils-0.1.12.tar.gz";
|
||||||
|
hash = "sha256-LbOl4L4UZbRTlLuBL4L3ser6+WDuP3R5a03EIh1xSK8=";
|
||||||
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
django
|
||||||
|
djangorestframework
|
||||||
|
graypy
|
||||||
|
setuptools
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "ITG specific stuff";
|
||||||
|
homepage = "http://www.ivrtechnology.com";
|
||||||
|
maintainers = [];
|
||||||
|
};
|
||||||
|
|
||||||
|
doCheck = false;
|
||||||
|
}
|
||||||
@@ -0,0 +1,90 @@
|
|||||||
|
{ lib
|
||||||
|
, stdenv
|
||||||
|
, python3
|
||||||
|
, fetchFromGitHub
|
||||||
|
, installShellFiles
|
||||||
|
}:
|
||||||
|
|
||||||
|
with python3.pkgs;
|
||||||
|
|
||||||
|
let
|
||||||
|
|
||||||
|
runtimeDeps = ps: with ps; [
|
||||||
|
certifi
|
||||||
|
setuptools
|
||||||
|
pip
|
||||||
|
virtualenv
|
||||||
|
virtualenv-clone
|
||||||
|
]
|
||||||
|
++ lib.optionals stdenv.hostPlatform.isAndroid [
|
||||||
|
pyjnius
|
||||||
|
];
|
||||||
|
|
||||||
|
pythonEnv = python3.withPackages runtimeDeps;
|
||||||
|
|
||||||
|
in buildPythonApplication rec {
|
||||||
|
pname = "pipenv";
|
||||||
|
version = "2023.11.15";
|
||||||
|
format = "pyproject";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "pypa";
|
||||||
|
repo = "pipenv";
|
||||||
|
rev = "refs/tags/v${version}";
|
||||||
|
hash = "sha256-kxwyws22xJkqBy/hXXcAPHZR2NgZHbmwZr9vYqce434=";
|
||||||
|
};
|
||||||
|
|
||||||
|
env.LC_ALL = "en_US.UTF-8";
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
installShellFiles
|
||||||
|
setuptools
|
||||||
|
wheel
|
||||||
|
];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
# pipenv invokes python in a subprocess to create a virtualenv
|
||||||
|
# and to call setup.py.
|
||||||
|
# It would use sys.executable, which in our case points to a python that
|
||||||
|
# does not have the required dependencies.
|
||||||
|
substituteInPlace pipenv/utils/virtualenv.py \
|
||||||
|
--replace "sys.executable" "'${pythonEnv.interpreter}'"
|
||||||
|
'';
|
||||||
|
|
||||||
|
propagatedBuildInputs = runtimeDeps python3.pkgs;
|
||||||
|
|
||||||
|
preCheck = ''
|
||||||
|
export HOME="$TMPDIR"
|
||||||
|
'';
|
||||||
|
|
||||||
|
nativeCheckInputs = [
|
||||||
|
mock
|
||||||
|
pytestCheckHook
|
||||||
|
pytest-xdist
|
||||||
|
pytz
|
||||||
|
requests
|
||||||
|
];
|
||||||
|
|
||||||
|
disabledTests = [
|
||||||
|
"test_convert_deps_to_pip"
|
||||||
|
"test_download_file"
|
||||||
|
];
|
||||||
|
|
||||||
|
disabledTestPaths = [
|
||||||
|
"tests/integration"
|
||||||
|
];
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
installShellCompletion --cmd pipenv \
|
||||||
|
--bash <(_PIPENV_COMPLETE=bash_source $out/bin/pipenv) \
|
||||||
|
--zsh <(_PIPENV_COMPLETE=zsh_source $out/bin/pipenv) \
|
||||||
|
--fish <(_PIPENV_COMPLETE=fish_source $out/bin/pipenv)
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Python Development Workflow for Humans";
|
||||||
|
license = licenses.mit;
|
||||||
|
platforms = platforms.all;
|
||||||
|
maintainers = with maintainers; [ berdario ];
|
||||||
|
};
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user