Init
This commit is contained in:
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
result
|
||||||
|
.direnv/*
|
||||||
31
README.md
Normal file
31
README.md
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
# Test the build of packages
|
||||||
|
|
||||||
|
```sh
|
||||||
|
❯ nix build .#entsoe-apy.src
|
||||||
|
❯ nix build .#entsoe-apy
|
||||||
|
```
|
||||||
|
|
||||||
|
# Enter a development shell
|
||||||
|
|
||||||
|
```sh
|
||||||
|
❯ nix develop
|
||||||
|
❯ pip show entsoe-apy
|
||||||
|
Name: entsoe-apy
|
||||||
|
Version: 0.4.0
|
||||||
|
Summary: A Python library for accessing ENTSO-E Transparency Platform API endpoints
|
||||||
|
```
|
||||||
|
|
||||||
|
# Inspect flake
|
||||||
|
|
||||||
|
```sh
|
||||||
|
❯ nix flake show
|
||||||
|
warning: Git tree '/home/jonathan/git/NIX/packaging' is dirty
|
||||||
|
git+file:///home/jonathan/git/NIX/packaging
|
||||||
|
├───devShells
|
||||||
|
│ └───x86_64-linux
|
||||||
|
│ └───default: development environment 'Python-ENTSOE-Dev'
|
||||||
|
└───packages
|
||||||
|
└───x86_64-linux
|
||||||
|
├───entsoe-apy: package 'python3.13-entsoe-apy-0.4.0'
|
||||||
|
└───xsdata-pydantic: package 'python3.13-xsdata-pydantic-24.5'
|
||||||
|
```
|
||||||
45
entsoe-apy.nix
Normal file
45
entsoe-apy.nix
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
buildPythonPackage,
|
||||||
|
fetchFromGitHub,
|
||||||
|
setuptools,
|
||||||
|
pytestCheckHook,
|
||||||
|
httpx,
|
||||||
|
loguru,
|
||||||
|
xsdata-pydantic,
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "entsoe-apy";
|
||||||
|
version = "0.4.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "berrij";
|
||||||
|
repo = "entsoe-apy";
|
||||||
|
rev = "cb4ebd4ed401268e605b5267347e0e934d048883";
|
||||||
|
hash = "sha256-M0W0r7ApJKG0wMczC0kp/jNOa+PcgVGadvEOSQ2hRkU=";
|
||||||
|
};
|
||||||
|
|
||||||
|
pyproject = true;
|
||||||
|
build-system = [ setuptools ];
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
httpx
|
||||||
|
loguru
|
||||||
|
xsdata-pydantic
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeCheckInputs = [ pytestCheckHook ];
|
||||||
|
|
||||||
|
pythonImportsCheck = [
|
||||||
|
"entsoe"
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Python Package to Query the ENTSO-E API";
|
||||||
|
homepage = "https://github.com/berrij/entsoe-apy";
|
||||||
|
license = lib.licenses.gpl3Only;
|
||||||
|
maintainers = with lib.maintainers; [ berrij ];
|
||||||
|
platforms = lib.platforms.all;
|
||||||
|
};
|
||||||
|
}
|
||||||
27
flake.lock
generated
Normal file
27
flake.lock
generated
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1759632233,
|
||||||
|
"narHash": "sha256-krgZxGAIIIKFJS+UB0l8do3sYUDWJc75M72tepmVMzE=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "d7f52a7a640bc54c7bb414cca603835bf8dd4b10",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": "nixpkgs"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
||||||
31
flake.nix
Normal file
31
flake.nix
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs =
|
||||||
|
{ self, nixpkgs }:
|
||||||
|
let
|
||||||
|
system = "x86_64-linux"; # Adjust if necessary
|
||||||
|
pkgs = import nixpkgs {
|
||||||
|
inherit system;
|
||||||
|
};
|
||||||
|
|
||||||
|
in
|
||||||
|
{
|
||||||
|
packages.${system} = {
|
||||||
|
xsdata-pydantic = pkgs.python313Packages.callPackage ./xsdata-pydantic.nix { };
|
||||||
|
entsoe-apy = pkgs.python313Packages.callPackage ./entsoe-apy.nix {
|
||||||
|
xsdata-pydantic = self.packages.${system}.xsdata-pydantic;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
devShells.${system} = {
|
||||||
|
default = pkgs.mkShell {
|
||||||
|
name = "packaging";
|
||||||
|
venvDir = "./.venv";
|
||||||
|
buildInputs = [ pkgs.python313Packages.pip ] ++ builtins.attrValues self.packages.${system};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
40
xsdata-pydantic.nix
Normal file
40
xsdata-pydantic.nix
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
buildPythonPackage,
|
||||||
|
fetchFromGitHub,
|
||||||
|
setuptools,
|
||||||
|
xsdata,
|
||||||
|
pydantic,
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "xsdata-pydantic";
|
||||||
|
version = "24.5";
|
||||||
|
pyproject = true;
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "tefra";
|
||||||
|
repo = "xsdata-pydantic";
|
||||||
|
tag = "v${version}";
|
||||||
|
hash = "sha256-ExgAXQRNfGQRSZdMuWc8ldJPqz+3c4Imgu75KXLXHNk=";
|
||||||
|
};
|
||||||
|
|
||||||
|
build-system = [ setuptools ];
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
xsdata
|
||||||
|
pydantic
|
||||||
|
];
|
||||||
|
|
||||||
|
pythonImportsCheck = [
|
||||||
|
"xsdata_pydantic"
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Naive XML & JSON Bindings for python pydantic classes!";
|
||||||
|
homepage = "https://github.com/tefra/xsdata-pydantic";
|
||||||
|
maintainers = with lib.maintainers; [ berrij ];
|
||||||
|
license = lib.licenses.mit;
|
||||||
|
platforms = lib.platforms.all;
|
||||||
|
};
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user