mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-08-25 17:55:21 +00:00
netbox_4_6: init at 4.6.8 (#530025)
This commit is contained in:
@@ -207,6 +207,10 @@
|
||||
|
||||
- `chatgpt` has been retargeted to OpenAI's new ChatGPT desktop app, while the previous app has been renamed to `chatgpt-classic`.
|
||||
|
||||
- NetBox was updated to `>= 4.6.8`. Have a look at the breaking changes
|
||||
of the [4.6 release](https://github.com/netbox-community/netbox/releases/tag/v4.6.0),
|
||||
make the required changes to your database, if needed, then upgrade by setting `services.netbox.package = pkgs.netbox_4_6;` in your configuration.
|
||||
|
||||
## Other Notable Changes {#sec-release-26.11-notable-changes}
|
||||
|
||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||
|
||||
@@ -434,11 +434,12 @@ in
|
||||
package = lib.mkOption {
|
||||
type = types.package;
|
||||
default =
|
||||
if lib.versionAtLeast config.system.stateVersion "26.05" then pkgs.netbox_4_5 else pkgs.netbox_4_4;
|
||||
if lib.versionAtLeast config.system.stateVersion "26.11" then pkgs.netbox_4_6 else pkgs.netbox_4_5;
|
||||
defaultText = lib.literalExpression ''
|
||||
if lib.versionAtLeast config.system.stateVersion "26.05"
|
||||
then pkgs.netbox_4_5
|
||||
else pkgs.netbox_4_4;
|
||||
if lib.versionAtLeast config.system.stateVersion "26.11" then
|
||||
pkgs.netbox_4_6
|
||||
else
|
||||
pkgs.netbox_4_5;
|
||||
'';
|
||||
description = ''
|
||||
NetBox package to use.
|
||||
|
||||
@@ -1156,6 +1156,7 @@ in
|
||||
netbox-upgrade = runTest ./web-apps/netbox-upgrade.nix;
|
||||
netbox_4_4 = handleTest ./web-apps/netbox/default.nix { netbox = pkgs.netbox_4_4; };
|
||||
netbox_4_5 = handleTest ./web-apps/netbox/default.nix { netbox = pkgs.netbox_4_5; };
|
||||
netbox_4_6 = handleTest ./web-apps/netbox/default.nix { netbox = pkgs.netbox_4_6; };
|
||||
netdata = runTest ./netdata.nix;
|
||||
netfoil = runTest ./netfoil.nix;
|
||||
netplan = runTest ./netplan.nix;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{ lib, pkgs, ... }:
|
||||
let
|
||||
oldNetbox = "netbox_4_4";
|
||||
newNetbox = "netbox_4_5";
|
||||
oldNetbox = "netbox_4_5";
|
||||
newNetbox = "netbox_4_6";
|
||||
|
||||
apiVersion =
|
||||
version:
|
||||
|
||||
@@ -139,6 +139,9 @@ py.pkgs.buildPythonApplication rec {
|
||||
description = "IP address management (IPAM) and data center infrastructure management (DCIM) tool";
|
||||
mainProgram = "netbox";
|
||||
license = lib.licenses.asl20;
|
||||
knownVulnerabilities = [
|
||||
"Netbox Version ${version} is EOL; please upgrade by following the current release notes instructions"
|
||||
];
|
||||
maintainers = with lib.maintainers; [
|
||||
minijackson
|
||||
transcaffeine
|
||||
|
||||
13
pkgs/by-name/ne/netbox_4_6/custom-static-root.patch
Normal file
13
pkgs/by-name/ne/netbox_4_6/custom-static-root.patch
Normal file
@@ -0,0 +1,13 @@
|
||||
diff --git a/netbox/netbox/settings.py b/netbox/netbox/settings.py
|
||||
index f334a73a7..8e8d76f0e 100644
|
||||
--- a/netbox/netbox/settings.py
|
||||
+++ b/netbox/netbox/settings.py
|
||||
@@ -604,7 +604,7 @@ X_FRAME_OPTIONS = 'SAMEORIGIN'
|
||||
|
||||
# Static files (CSS, JavaScript, Images)
|
||||
# STATIC_ROOT is deliberately not a configuration parameter; static files are collected to <NETBOX_ROOT>/static.
|
||||
-STATIC_ROOT = os.path.join(NETBOX_ROOT, 'static')
|
||||
+STATIC_ROOT = getattr(configuration, 'STATIC_ROOT', os.path.join(NETBOX_ROOT, 'static')).rstrip('/')
|
||||
STATIC_URL = f'/{BASE_PATH}static/'
|
||||
STATICFILES_DIRS = (
|
||||
os.path.join(BASE_DIR, 'project-static', 'dist'),
|
||||
149
pkgs/by-name/ne/netbox_4_6/package.nix
Normal file
149
pkgs/by-name/ne/netbox_4_6/package.nix
Normal file
@@ -0,0 +1,149 @@
|
||||
{
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
python3,
|
||||
fetchpatch2,
|
||||
plugins ? _ps: [ ],
|
||||
nixosTests,
|
||||
nix-update-script,
|
||||
}:
|
||||
let
|
||||
py = python3.override {
|
||||
self = py;
|
||||
packageOverrides = _final: prev: { django = prev.django_6; };
|
||||
};
|
||||
|
||||
extraBuildInputs = plugins py.pkgs;
|
||||
in
|
||||
py.pkgs.buildPythonApplication (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox";
|
||||
version = "4.6.8";
|
||||
pyproject = false;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "netbox-community";
|
||||
repo = "netbox";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-fhEcQBYL5R9Tv9CpAf3Ce1oIzsXCjtH5j+dP9sD6kdg=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./custom-static-root.patch
|
||||
# TODO: remove before upgrading to NetBox v4.7
|
||||
(fetchpatch2 {
|
||||
name = "upgrade-django-tables2-v3.0.patch";
|
||||
url = "https://github.com/netbox-community/netbox/commit/d57346d9f0eef8126eafcd5033ea43864faeaf0d.patch";
|
||||
hash = "sha256-6/wdd8wDVT4eqDKMNx8tmoPTDvw8OE7atf9nzg3LZzk=";
|
||||
})
|
||||
];
|
||||
|
||||
dependencies =
|
||||
(
|
||||
with py.pkgs;
|
||||
[
|
||||
colorama
|
||||
django
|
||||
django-cors-headers
|
||||
django-debug-toolbar
|
||||
django-filter
|
||||
django-graphiql-debug-toolbar
|
||||
django-htmx
|
||||
django-mptt
|
||||
django-pglocks
|
||||
django-prometheus
|
||||
django-redis
|
||||
django-rq
|
||||
django-storages
|
||||
django-tables2
|
||||
django-taggit
|
||||
django-timezone-field
|
||||
djangorestframework
|
||||
drf-spectacular
|
||||
drf-spectacular-sidecar
|
||||
feedparser
|
||||
jinja2
|
||||
markdown
|
||||
netaddr
|
||||
nh3
|
||||
pillow
|
||||
psycopg
|
||||
pyyaml
|
||||
requests
|
||||
social-auth-core
|
||||
social-auth-app-django
|
||||
sorl-thumbnail
|
||||
strawberry-graphql
|
||||
strawberry-graphql-django
|
||||
svgwrite
|
||||
tablib
|
||||
|
||||
# Optional dependencies, kept here for backward compatibility
|
||||
|
||||
# for the S3 data source backend
|
||||
boto3
|
||||
# for Git data source backend
|
||||
dulwich
|
||||
# for error reporting
|
||||
sentry-sdk
|
||||
]
|
||||
++ psycopg.optional-dependencies.c
|
||||
++ psycopg.optional-dependencies.pool
|
||||
++ social-auth-core.optional-dependencies.openidconnect
|
||||
)
|
||||
++ extraBuildInputs;
|
||||
|
||||
nativeBuildInputs = with py.pkgs; [
|
||||
mkdocs-material
|
||||
mkdocs-material-extensions
|
||||
mkdocstrings
|
||||
mkdocstrings-python
|
||||
];
|
||||
|
||||
postBuild = ''
|
||||
PYTHONPATH=$PYTHONPATH:netbox/
|
||||
${py.pythonOnBuildForHost.interpreter} -m mkdocs build
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/opt/netbox
|
||||
cp -r . $out/opt/netbox
|
||||
chmod +x $out/opt/netbox/netbox/manage.py
|
||||
makeWrapper $out/opt/netbox/netbox/manage.py $out/bin/netbox \
|
||||
--prefix PYTHONPATH : "$PYTHONPATH"
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
python = py;
|
||||
# PYTHONPATH of all dependencies used by the package
|
||||
pythonPath = py.pkgs.makePythonPath finalAttrs.passthru.dependencies;
|
||||
inherit (py.pkgs) gunicorn;
|
||||
tests = {
|
||||
netbox = nixosTests.netbox_4_6;
|
||||
inherit (nixosTests) netbox-upgrade;
|
||||
};
|
||||
updateScript = nix-update-script { };
|
||||
plugins = lib.recurseIntoAttrs (
|
||||
lib.makeExtensible (
|
||||
self:
|
||||
lib.packagesFromDirectoryRecursive {
|
||||
inherit (py.pkgs) callPackage;
|
||||
directory = ./plugins;
|
||||
}
|
||||
)
|
||||
);
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/netbox-community/netbox";
|
||||
changelog = "https://github.com/netbox-community/netbox/blob/${finalAttrs.src.tag}/docs/release-notes/version-${lib.versions.majorMinor finalAttrs.version}.md";
|
||||
description = "IP address management (IPAM) and data center infrastructure management (DCIM) tool";
|
||||
mainProgram = "netbox";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [
|
||||
minijackson
|
||||
transcaffeine
|
||||
];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,51 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
python,
|
||||
netbox,
|
||||
django,
|
||||
netaddr,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-attachments";
|
||||
version = "11.2.3";
|
||||
pyproject = true;
|
||||
|
||||
disabled = python.pythonVersion != netbox.python.pythonVersion;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Kani999";
|
||||
repo = "netbox-attachments";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-zuRwUKYywiyIm7qvOUmbxYfct+ZR+GmaQ4oxf3gMVY4=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
netbox
|
||||
django
|
||||
netaddr
|
||||
];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [ "netbox_attachments" ];
|
||||
|
||||
passthru.pluginName = "netbox_attachments";
|
||||
|
||||
meta = {
|
||||
description = "Plugin to manage attachments for any model";
|
||||
homepage = "https://github.com/Kani999/netbox-attachments";
|
||||
changelog = "https://github.com/Kani999/netbox-attachments/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
43
pkgs/by-name/ne/netbox_4_6/plugins/netbox-bgp/package.nix
Normal file
43
pkgs/by-name/ne/netbox_4_6/plugins/netbox-bgp/package.nix
Normal file
@@ -0,0 +1,43 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
netbox,
|
||||
python,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-bgp";
|
||||
version = "0.19.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "netbox-community";
|
||||
repo = "netbox-bgp";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-6LZLsUPC9L9L19KeXJilJvmZYcl6YwqysGO8nFAUmcI=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
nativeCheckInputs = [ netbox ];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_bgp" ];
|
||||
|
||||
passthru.pluginName = "netbox_bgp";
|
||||
|
||||
meta = {
|
||||
description = "NetBox plugin for BGP related objects documentation";
|
||||
homepage = "https://github.com/netbox-community/netbox-bgp";
|
||||
changelog = "https://github.com/netbox-community/netbox-bgp/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,52 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
netbox,
|
||||
python,
|
||||
netbox-napalm-plugin,
|
||||
pydriller,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-config-backup";
|
||||
version = "2.2.2";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "DanSheps";
|
||||
repo = "netbox-config-backup";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-PT7/RCpB7SAinQ8McQV59b9ouqqUSoEqEj0ultL37cs=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
pythonRemoveDeps = [ "uuid" ]; # python builtin
|
||||
|
||||
dependencies = [
|
||||
netbox-napalm-plugin
|
||||
pydriller
|
||||
];
|
||||
|
||||
nativeCheckInputs = [ netbox ];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_config_backup" ];
|
||||
|
||||
passthru.pluginName = "netbox_config_backup";
|
||||
|
||||
meta = {
|
||||
description = "NetBox plugin for configuration backups using napalm";
|
||||
homepage = "https://github.com/DanSheps/netbox-config-backup";
|
||||
changelog = "https://github.com/DanSheps/netbox-config-backup/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,34 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-contextmenus";
|
||||
version = "1.4.14";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "PieterL75";
|
||||
repo = "netbox_contextmenus";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-YqyxZaHKXhMLDdBTAAKQsCBBSXikxBgcOvXEfa6f+0Y=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
# pythonImportsCheck fails due to improperly configured django app
|
||||
|
||||
passthru.pluginName = "netbox_contextmenus";
|
||||
|
||||
meta = {
|
||||
description = "Netbox plugin to add context buttons to the links, making navigating less clicky";
|
||||
homepage = "https://github.com/PieterL75/netbox_contextmenus/";
|
||||
changelog = "https://github.com/PieterL75/netbox_contextmenus/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,57 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
python,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
python-dateutil,
|
||||
drf-yasg,
|
||||
netbox,
|
||||
netaddr,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-contract";
|
||||
version = "2.4.6";
|
||||
pyproject = true;
|
||||
|
||||
disabled = python.pythonVersion != netbox.python.pythonVersion;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mlebreuil";
|
||||
repo = "netbox-contract";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-e8DYjU2UtlWu044e4b5eJWOA/fXDRKLl5AVtaepG0sg=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [
|
||||
python-dateutil
|
||||
drf-yasg
|
||||
];
|
||||
|
||||
# running tests requires initialized django project
|
||||
nativeCheckInputs = [
|
||||
netbox
|
||||
netaddr
|
||||
];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [ "netbox_contract" ];
|
||||
|
||||
passthru.pluginName = "netbox_contract";
|
||||
|
||||
meta = {
|
||||
description = "Contract plugin for netbox";
|
||||
homepage = "https://github.com/mlebreuil/netbox-contract";
|
||||
changelog = "https://github.com/mlebreuil/netbox-contract/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.mit;
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,43 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
netbox,
|
||||
python,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-custom-objects";
|
||||
version = "0.6.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "netboxlabs";
|
||||
repo = "netbox-custom-objects";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-HnA2CJL0EOJctQpsu/G+9fULBIa8rrrYNiT0aaDw/rI=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
nativeCheckInputs = [ netbox ];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
dontCheckPythonMetadata = true;
|
||||
pythonImportsCheck = [ "netbox_custom_objects" ];
|
||||
passthru.pluginName = "netbox_custom_objects";
|
||||
|
||||
meta = {
|
||||
description = "NetBox plugin to create new object types";
|
||||
homepage = "https://github.com/netboxlabs/netbox-custom-objects";
|
||||
changelog = "https://github.com/netboxlabs/netbox-custom-objects/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.netboxLimitedUse;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,43 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
netbox,
|
||||
python,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-data-flows";
|
||||
version = "1.5.3";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Alef-Burzmali";
|
||||
repo = "netbox-data-flows";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-LrClGEmei1IHK/mv0MkZQnEzbH4afg46W5miMLM9a0g=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
nativeCheckInputs = [ netbox ];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_data_flows" ];
|
||||
|
||||
passthru.pluginName = "netbox_data_flows";
|
||||
|
||||
meta = {
|
||||
description = "NetBox plugin to document data flows between systems and applications";
|
||||
homepage = "https://github.com/Alef-Burzmali/netbox-data-flows";
|
||||
changelog = "https://github.com/Alef-Burzmali/netbox-data-flows/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
40
pkgs/by-name/ne/netbox_4_6/plugins/netbox-dns/package.nix
Normal file
40
pkgs/by-name/ne/netbox_4_6/plugins/netbox-dns/package.nix
Normal file
@@ -0,0 +1,40 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
dnspython,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-plugin-dns";
|
||||
version = "1.5.10";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "peteeckel";
|
||||
repo = "netbox-plugin-dns";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-wxTW/qiwp+1CXUeCDJnllEW2oCTjlFVUot7JfWPooaw=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [
|
||||
dnspython
|
||||
];
|
||||
|
||||
# pythonImportsCheck fails due to improperly configured django app
|
||||
|
||||
passthru.pluginName = "netbox_dns";
|
||||
|
||||
meta = {
|
||||
description = "Netbox plugin for managing DNS data";
|
||||
homepage = "https://github.com/peteeckel/netbox-plugin-dns";
|
||||
changelog = "https://github.com/peteeckel/netbox-plugin-dns/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.mit;
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,46 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
drf-extra-fields,
|
||||
python,
|
||||
netbox,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-documents";
|
||||
version = "0.8.5";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jasonyates";
|
||||
repo = "netbox-documents";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-hupJ5gbRj/70oslEosob4gT2y2le5vOrq30t3NWl0nQ=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [ drf-extra-fields ];
|
||||
|
||||
nativeCheckInputs = [ netbox ];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_documents" ];
|
||||
|
||||
passthru.pluginName = "netbox_documents";
|
||||
|
||||
meta = {
|
||||
description = "Plugin designed to faciliate the storage of site, circuit, device type and device specific documents within NetBox";
|
||||
homepage = "https://github.com/jasonyates/netbox-documents";
|
||||
changelog = "https://github.com/jasonyates/netbox-documents/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,51 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
netbox,
|
||||
django,
|
||||
netaddr,
|
||||
python,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-floorplan-plugin";
|
||||
version = "0.9.2";
|
||||
pyproject = true;
|
||||
|
||||
disabled = python.pythonVersion != netbox.python.pythonVersion;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "netbox-community";
|
||||
repo = "netbox-floorplan-plugin";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-I7cz0IONU+RESCA8C57Yxg5ieheryZ31ed9N9OxSeLA=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
netbox
|
||||
django
|
||||
netaddr
|
||||
];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_floorplan" ];
|
||||
|
||||
passthru.pluginName = "netbox_floorplan";
|
||||
|
||||
meta = {
|
||||
description = "Netbox plugin providing floorplan mapping capability for locations and sites";
|
||||
homepage = "https://github.com/netbox-community/netbox-floorplan-plugin";
|
||||
changelog = "https://github.com/netbox-community/netbox-floorplan-plugin/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.lgpl3;
|
||||
maintainers = with lib.maintainers; [ cobalt ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,65 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
|
||||
# build-system
|
||||
setuptools,
|
||||
|
||||
# dependencies
|
||||
django,
|
||||
netaddr,
|
||||
numpy,
|
||||
psycopg,
|
||||
requests,
|
||||
|
||||
# tests
|
||||
netbox,
|
||||
python,
|
||||
}:
|
||||
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-interface-synchronization";
|
||||
version = "4.5.8";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "NetTech2001";
|
||||
repo = "netbox-interface-synchronization";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-DZ1xOfHop/rASWbBzVILVqvll94tQM7tRiSXwOo/QQI=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [
|
||||
django
|
||||
netaddr
|
||||
requests
|
||||
numpy
|
||||
psycopg # not specified in pyproject.toml, but required at import time
|
||||
];
|
||||
|
||||
# netbox is required for the pythonImportsCheck; plugin does not provide unit tests
|
||||
nativeCheckInputs = [ netbox ];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_interface_synchronization" ];
|
||||
|
||||
passthru.pluginName = "netbox_interface_synchronization";
|
||||
|
||||
meta = {
|
||||
description = "Netbox plugin to compare and synchronize interfaces between devices and device types";
|
||||
homepage = "https://github.com/NetTech2001/netbox-interface-synchronization";
|
||||
changelog = "https://github.com/NetTech2001/netbox-interface-synchronization/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.gpl3Only;
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,43 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
netbox,
|
||||
python,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-inventory";
|
||||
version = "2.6.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ArnesSI";
|
||||
repo = "netbox-inventory";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-NTo9WYkjY4BdE3gSkzNKxjHiWVnLQGVZQ5s8e9u3VY0=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
nativeCheckInputs = [ netbox ];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_inventory" ];
|
||||
|
||||
passthru.pluginName = "netbox_inventory";
|
||||
|
||||
meta = {
|
||||
description = "NetBox plugin to manage hardware inventory";
|
||||
homepage = "https://github.com/ArnesSI/netbox-inventory";
|
||||
changelog = "https://github.com/ArnesSI/netbox-inventory/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,46 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
netbox,
|
||||
python,
|
||||
django-polymorphic,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-lifecycle";
|
||||
version = "1.1.9";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "DanSheps";
|
||||
repo = "netbox-lifecycle";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-iCBlwhaf6IFdni7FQyRPtRJVwt04w0Jc4R0CeQlIWCY=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
nativeCheckInputs = [ netbox ];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_lifecycle" ];
|
||||
|
||||
dependencies = [ django-polymorphic ];
|
||||
|
||||
passthru.pluginName = "netbox_lifecycle";
|
||||
|
||||
meta = {
|
||||
description = "NetBox plugin for managing Hardware EOL/EOS, and Support Contracts";
|
||||
homepage = "https://github.com/DanSheps/netbox-lifecycle";
|
||||
changelog = "https://github.com/DanSheps/netbox-lifecycle/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
44
pkgs/by-name/ne/netbox_4_6/plugins/netbox-lists/package.nix
Normal file
44
pkgs/by-name/ne/netbox_4_6/plugins/netbox-lists/package.nix
Normal file
@@ -0,0 +1,44 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
hatchling,
|
||||
netbox,
|
||||
python,
|
||||
}:
|
||||
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-lists";
|
||||
version = "4.0.4";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "devon-mar";
|
||||
repo = "netbox-lists";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-RRUuvoeB3xfqlZr1v1zpRdmVZK9av52ZsADOh9s4toQ=";
|
||||
};
|
||||
|
||||
build-system = [ hatchling ];
|
||||
|
||||
nativeCheckInputs = [ netbox ];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_lists" ];
|
||||
|
||||
passthru.pluginName = "netbox_lists";
|
||||
|
||||
meta = {
|
||||
description = "NetBox plugin to generate IP and prefix lists. Integrates with Ansible, Terraform, Prometheus, Oxidized and more";
|
||||
homepage = "https://github.com/devon-mar/netbox-lists";
|
||||
changelog = "https://github.com/devon-mar/netbox-lists/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,52 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
netbox,
|
||||
python,
|
||||
napalm,
|
||||
django,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-napalm-plugin";
|
||||
version = "0.3.5";
|
||||
pyproject = true;
|
||||
|
||||
disabled = python.pythonVersion != netbox.python.pythonVersion;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "netbox-community";
|
||||
repo = "netbox-napalm-plugin";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-dtoiA6gvWL6aGBHmHTwqK8L0qRyA83GcUCGAmg9Xo8w=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [ napalm ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
netbox
|
||||
django
|
||||
];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [ "netbox_napalm_plugin" ];
|
||||
|
||||
passthru.pluginName = "netbox_napalm_plugin";
|
||||
|
||||
meta = {
|
||||
description = "Netbox plugin for Napalm integration";
|
||||
homepage = "https://github.com/netbox-community/netbox-napalm-plugin";
|
||||
changelog = "https://github.com/netbox-community/netbox-napalm-plugin/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,55 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
|
||||
# build-system
|
||||
poetry-core,
|
||||
|
||||
# dependencies
|
||||
django,
|
||||
netaddr,
|
||||
netbox,
|
||||
psycopg,
|
||||
}:
|
||||
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-plugin-prometheus-sd";
|
||||
version = "2.0.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "FlxPeters";
|
||||
repo = "netbox-plugin-prometheus-sd";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-/TvpRRtyCNPmAuFk+wmcJldDniHEkV1t4Vvwa9Sl5eg=";
|
||||
};
|
||||
|
||||
build-system = [ poetry-core ];
|
||||
|
||||
dependencies = [
|
||||
django
|
||||
netaddr
|
||||
psycopg # not specified in pyproject.toml, but required at import time
|
||||
];
|
||||
|
||||
nativeCheckInputs = [ netbox ];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [ "netbox_prometheus_sd" ];
|
||||
|
||||
passthru.pluginName = "netbox_prometheus_sd";
|
||||
|
||||
meta = {
|
||||
description = "Netbox plugin to provide Netbox entires to Prometheus HTTP service discovery";
|
||||
homepage = "https://github.com/FlxPeters/netbox-plugin-prometheus-sd";
|
||||
changelog = "https://github.com/FlxPeters/netbox-plugin-prometheus-sd/releases/tag/v${finalAttrs.version}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ xanderio ];
|
||||
};
|
||||
})
|
||||
66
pkgs/by-name/ne/netbox_4_6/plugins/netbox-qrcode/package.nix
Normal file
66
pkgs/by-name/ne/netbox_4_6/plugins/netbox-qrcode/package.nix
Normal file
@@ -0,0 +1,66 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
|
||||
# build-system
|
||||
setuptools,
|
||||
|
||||
# dependencies
|
||||
pillow,
|
||||
qrcode,
|
||||
psycopg2,
|
||||
|
||||
# nativeCheckInputs
|
||||
django,
|
||||
netaddr,
|
||||
netbox,
|
||||
python,
|
||||
}:
|
||||
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-qrcode";
|
||||
version = "0.0.21";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "netbox-community";
|
||||
repo = "netbox-qrcode";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-A4qjpbfTULzS0UchUN9eX8jZmwoX/ej/18L/YAB8dKA=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [
|
||||
qrcode
|
||||
pillow
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
django
|
||||
netaddr
|
||||
netbox
|
||||
psycopg2 # not specified in pyproject.toml, but required at import time
|
||||
];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_qrcode" ];
|
||||
|
||||
passthru.pluginName = "netbox_qrcode";
|
||||
|
||||
meta = {
|
||||
description = "Netbox plugin for generate QR codes for objects: Rack, Device, Cable";
|
||||
homepage = "https://github.com/netbox-community/netbox-qrcode";
|
||||
changelog = "https://github.com/netbox-community/netbox-qrcode/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,44 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
netbox,
|
||||
python,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-reorder-rack";
|
||||
version = "1.1.4";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "netbox-community";
|
||||
repo = "netbox-reorder-rack";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-lWC+Br66POJe3M8L+Pt5D1pWBr9qSpRLn2TcVMXKje4=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
];
|
||||
|
||||
checkInputs = [ netbox ];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_reorder_rack" ];
|
||||
|
||||
passthru.pluginName = "netbox_reorder_rack";
|
||||
|
||||
meta = {
|
||||
description = "NetBox plugin to allow users to reorder devices within a rack using a drag and drop UI";
|
||||
homepage = "https://github.com/netbox-community/netbox-reorder-rack";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ minijackson ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,46 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
netbox,
|
||||
python,
|
||||
django-polymorphic,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-routing";
|
||||
version = "0.4.3";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "DanSheps";
|
||||
repo = "netbox-routing";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-3biANhaAi3uRtaXnAw4i6nWnHkARkkBVqyBHLXIMOdA=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
nativeCheckInputs = [ netbox ];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_routing" ];
|
||||
|
||||
dependencies = [ django-polymorphic ];
|
||||
|
||||
passthru.pluginName = "netbox_routing";
|
||||
|
||||
meta = {
|
||||
description = "NetBox plugin for tracking all kinds of routing information";
|
||||
homepage = "https://github.com/DanSheps/netbox-routing";
|
||||
changelog = "https://github.com/DanSheps/netbox-routing/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ benley ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,47 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
netbox,
|
||||
python,
|
||||
pycryptodome,
|
||||
}:
|
||||
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-secrets";
|
||||
version = "3.1.1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Onemind-Services-LLC";
|
||||
repo = "netbox-secrets";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-XB4upeu2C2ok0jmLX47tOjrjV4b/WXCpgtlRz9+MgAs=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [ pycryptodome ];
|
||||
|
||||
nativeCheckInputs = [ netbox ];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_secrets" ];
|
||||
|
||||
passthru.pluginName = "netbox_secrets";
|
||||
|
||||
meta = {
|
||||
description = "NetBox plugin to enhance secret management with encrypted storage and flexible, user-friendly features";
|
||||
homepage = "https://github.com/Onemind-Services-LLC/netbox-secrets";
|
||||
changelog = "https://github.com/Onemind-Services-LLC/netbox-secrets/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,43 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
netbox,
|
||||
python,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-security";
|
||||
version = "1.5.10";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "andy-shady-org";
|
||||
repo = "netbox-security";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-DOutzFIF/ey2o9M3sb15rmbGJyzsTXfiwC5Rqks8vxc=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
nativeCheckInputs = [ netbox ];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_security" ];
|
||||
|
||||
passthru.pluginName = "netbox_security";
|
||||
|
||||
meta = {
|
||||
description = "NetBox plugin covering various security and NAT related models";
|
||||
homepage = "https://github.com/andy-shady-org/netbox-security";
|
||||
changelog = "https://github.com/andy-shady-org/netbox-security/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,52 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
netbox,
|
||||
django,
|
||||
netaddr,
|
||||
python,
|
||||
}:
|
||||
buildPythonPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "netbox-topology-views";
|
||||
version = "4.5.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = python.pythonVersion != netbox.python.pythonVersion;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "netbox-community";
|
||||
repo = "netbox-topology-views";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-uKxIu8IPeEwBdRbtQaLWGwLnxvFyJ5FrScsU/ufyTuM=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
netbox
|
||||
django
|
||||
netaddr
|
||||
];
|
||||
|
||||
preFixup = ''
|
||||
export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
|
||||
'';
|
||||
|
||||
dontUsePythonImportsCheck = python.pythonVersion != netbox.python.pythonVersion;
|
||||
pythonImportsCheck = [ "netbox_topology_views" ];
|
||||
|
||||
passthru.pluginName = "netbox_topology_views";
|
||||
|
||||
meta = {
|
||||
description = "Netbox plugin for generate topology views/maps from your devices";
|
||||
homepage = "https://github.com/netbox-community/netbox-topology-views";
|
||||
changelog = "https://github.com/netbox-community/netbox-topology-views/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [ felbinger ];
|
||||
};
|
||||
})
|
||||
@@ -2513,7 +2513,7 @@ with pkgs;
|
||||
ioskeley-mono = recurseIntoAttrs (callPackage ../data/fonts/ioskeley-mono { });
|
||||
|
||||
# Not in aliases because it wouldn't get picked up by callPackage
|
||||
netbox = netbox_4_5;
|
||||
netbox = netbox_4_6;
|
||||
|
||||
netboxPlugins = recurseIntoAttrs netbox.plugins;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user