commit 3fecc120039fa9a44cf6cd60d58d2be397d55b76 Author: harris-chris Date: Fri Mar 18 11:18:21 2022 +0900 First commit diff --git a/haskell-clash b/haskell-clash new file mode 160000 index 0000000..1e72632 --- /dev/null +++ b/haskell-clash @@ -0,0 +1 @@ +Subproject commit 1e7263237368e6322727792530b34dedfc871756 diff --git a/pythonflake-mach-nix/flake.lock b/pythonflake-mach-nix/flake.lock new file mode 100644 index 0000000..ab195bc --- /dev/null +++ b/pythonflake-mach-nix/flake.lock @@ -0,0 +1,110 @@ +{ + "nodes": { + "flake-utils": { + "locked": { + "lastModified": 1644229661, + "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_2": { + "locked": { + "lastModified": 1642700792, + "narHash": "sha256-XqHrk7hFb+zBvRg6Ghl+AZDq03ov6OshJLiSWOoX5es=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "846b2ae0fc4cc943637d3d1def4454213e203cba", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "mach-nix": { + "inputs": { + "flake-utils": "flake-utils_2", + "nixpkgs": "nixpkgs", + "pypi-deps-db": "pypi-deps-db" + }, + "locked": { + "lastModified": 1644818395, + "narHash": "sha256-oU9TcxWjUMdEyB7OajWJ06Lcf0z3HmTl0znMTfIA3dA=", + "owner": "DavHau", + "repo": "mach-nix", + "rev": "c914064c9b8cab9495818ffe8d834d8c2c1d7ce7", + "type": "github" + }, + "original": { + "owner": "DavHau", + "repo": "mach-nix", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1643805626, + "narHash": "sha256-AXLDVMG+UaAGsGSpOtQHPIKB+IZ0KSd9WS77aanGzgc=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "554d2d8aa25b6e583575459c297ec23750adb6cb", + "type": "github" + }, + "original": { + "id": "nixpkgs", + "ref": "nixos-unstable", + "type": "indirect" + } + }, + "nixpkgs_2": { + "locked": { + "lastModified": 1647282937, + "narHash": "sha256-K8Oo6QyFCfiEWTRpQVfzcwI3YNMKlz6Tu8rr+o3rzRQ=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "64fc73bd74f04d3e10cb4e70e1c65b92337e76db", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-21.11", + "repo": "nixpkgs", + "type": "github" + } + }, + "pypi-deps-db": { + "flake": false, + "locked": { + "lastModified": 1643877077, + "narHash": "sha256-jv8pIvRFTP919GybOxXE5TfOkrjTbdo9QiCO1TD3ZaY=", + "owner": "DavHau", + "repo": "pypi-deps-db", + "rev": "da53397f0b782b0b18deb72ef8e0fb5aa7c98aa3", + "type": "github" + }, + "original": { + "owner": "DavHau", + "repo": "pypi-deps-db", + "type": "github" + } + }, + "root": { + "inputs": { + "flake-utils": "flake-utils", + "mach-nix": "mach-nix", + "nixpkgs": "nixpkgs_2" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/pythonflake-mach-nix/flake.nix b/pythonflake-mach-nix/flake.nix new file mode 100644 index 0000000..4f6dea2 --- /dev/null +++ b/pythonflake-mach-nix/flake.nix @@ -0,0 +1,41 @@ +{ + inputs = { + nixpkgs.url = github:NixOS/nixpkgs/nixos-21.11; + flake-utils.url = "github:numtide/flake-utils"; + mach-nix = { + url = "github:DavHau/mach-nix"; + }; + }; + outputs = { self, nixpkgs, flake-utils, mach-nix }: + flake-utils.lib.eachDefaultSystem (system: + let + pkgs = nixpkgs.legacyPackages.${system}; + machNix = mach-nix.lib."${system}"; + + packageName = "pythonflake-mach-nix"; + packageVersion = "0.1.0"; + + customOverrides = self: super: { }; + + requirements = '' + plumbum + ''; + + app = machNix.buildPythonApplication { + pname = packageName; + version = packageVersion; + src = ./.; + inherit requirements; + }; + + in { + packages.${packageName} = app; + + defaultPackage = self.packages.${system}.${packageName}; + apps.${system}.default = app; + + devShell = machNix.mkPythonShell { + inherit requirements; + }; + }); +} diff --git a/pythonflake-mach-nix/pythonflake_mach_nix/__init__.py b/pythonflake-mach-nix/pythonflake_mach_nix/__init__.py new file mode 100644 index 0000000..b1a7cb5 --- /dev/null +++ b/pythonflake-mach-nix/pythonflake_mach_nix/__init__.py @@ -0,0 +1,2 @@ +def return_text(): + return "is text" diff --git a/pythonflake-mach-nix/pythonflake_mach_nix/__main__.py b/pythonflake-mach-nix/pythonflake_mach_nix/__main__.py new file mode 100644 index 0000000..e70d848 --- /dev/null +++ b/pythonflake-mach-nix/pythonflake_mach_nix/__main__.py @@ -0,0 +1,7 @@ +from pythonflake_mach_nix import return_text + +def main(): + print(f"Running main function with additional text {return_text()}") + +if __name__ == '__main__': + main() diff --git a/pythonflake-mach-nix/setup.py b/pythonflake-mach-nix/setup.py new file mode 100644 index 0000000..a5c9cdb --- /dev/null +++ b/pythonflake-mach-nix/setup.py @@ -0,0 +1,10 @@ +from distutils.core import setup +setup( + name='pythonflake-mach-nix', + packages=['pythonflake_mach_nix'], + package_dir={'pythonflake_mach_nix': 'pythonflake_mach_nix'}, + version='0.1.0', + entry_points={ + 'console_scripts': ['pythonflake-mach-nix=pythonflake_mach_nix.__main__:main' ] + } + ) diff --git a/pythonflake-python2nix/README.rst b/pythonflake-python2nix/README.rst new file mode 100644 index 0000000..0b434a2 --- /dev/null +++ b/pythonflake-python2nix/README.rst @@ -0,0 +1,7 @@ +Nix Flake development Environment for Python +-------------------------------------------- + +Just go through and rename `pythonflake` to your project name. Doesn't seem to work with either hyphens or underscores in the project name so beware. The useful commands are then +`nix develop` to enter a shell +`nix run` to run the application +`nix build` to build it diff --git a/pythonflake-python2nix/flake.lock b/pythonflake-python2nix/flake.lock new file mode 100644 index 0000000..0b84a91 --- /dev/null +++ b/pythonflake-python2nix/flake.lock @@ -0,0 +1,42 @@ +{ + "nodes": { + "flake-utils": { + "locked": { + "lastModified": 1644229661, + "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1647244928, + "narHash": "sha256-CBikaQPToourAl0uDbE6DP+LmlGWYLyxefjj/C5fNhw=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "0c5586c2f26249527c09efab70d12d7ff63a3ff1", + "type": "github" + }, + "original": { + "owner": "NixOS", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "flake-utils": "flake-utils", + "nixpkgs": "nixpkgs" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/pythonflake-python2nix/flake.nix b/pythonflake-python2nix/flake.nix new file mode 100644 index 0000000..1bc78c1 --- /dev/null +++ b/pythonflake-python2nix/flake.nix @@ -0,0 +1,40 @@ +# SPDX-FileCopyrightText: 2021 Serokell +# +# SPDX-License-Identifier: CC0-1.0 + +{ + description = "My Python application"; + + inputs = { + nixpkgs.url = "github:NixOS/nixpkgs"; + flake-utils.url = "github:numtide/flake-utils"; + }; + + outputs = { self, nixpkgs, flake-utils }: + flake-utils.lib.eachDefaultSystem (system: + let + pkgs = nixpkgs.legacyPackages.${system}; + + customOverrides = self: super: { + # Overrides go here + }; + + app = pkgs.poetry2nix.mkPoetryApplication { + projectDir = ./.; + overrides = + [ pkgs.poetry2nix.defaultPoetryOverrides customOverrides ]; + }; + + packageName = "pythonflake"; + in { + packages.${packageName} = app; + + defaultPackage = self.packages.${system}.${packageName}; + apps.${system}.default = app; + + devShell = pkgs.mkShell { + buildInputs = with pkgs; [ poetry ]; + inputsFrom = builtins.attrValues self.packages.${system}; + }; + }); +} diff --git a/pythonflake-python2nix/poetry.lock b/pythonflake-python2nix/poetry.lock new file mode 100644 index 0000000..389c670 --- /dev/null +++ b/pythonflake-python2nix/poetry.lock @@ -0,0 +1,155 @@ +[[package]] +name = "atomicwrites" +version = "1.4.0" +description = "Atomic file writes." +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "attrs" +version = "21.4.0" +description = "Classes Without Boilerplate" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[package.extras] +dev = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "zope.interface", "furo", "sphinx", "sphinx-notfound-page", "pre-commit", "cloudpickle"] +docs = ["furo", "sphinx", "zope.interface", "sphinx-notfound-page"] +tests = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "zope.interface", "cloudpickle"] +tests_no_zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "cloudpickle"] + +[[package]] +name = "colorama" +version = "0.4.4" +description = "Cross-platform colored terminal text." +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[[package]] +name = "more-itertools" +version = "8.12.0" +description = "More routines for operating on iterables, beyond itertools" +category = "dev" +optional = false +python-versions = ">=3.5" + +[[package]] +name = "packaging" +version = "21.3" +description = "Core utilities for Python packages" +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +pyparsing = ">=2.0.2,<3.0.5 || >3.0.5" + +[[package]] +name = "pluggy" +version = "0.13.1" +description = "plugin and hook calling mechanisms for python" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[package.extras] +dev = ["pre-commit", "tox"] + +[[package]] +name = "py" +version = "1.11.0" +description = "library with cross-python path, ini-parsing, io, code, log facilities" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[[package]] +name = "pyparsing" +version = "3.0.7" +description = "Python parsing module" +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.extras] +diagrams = ["jinja2", "railroad-diagrams"] + +[[package]] +name = "pytest" +version = "5.4.3" +description = "pytest: simple powerful testing with Python" +category = "dev" +optional = false +python-versions = ">=3.5" + +[package.dependencies] +atomicwrites = {version = ">=1.0", markers = "sys_platform == \"win32\""} +attrs = ">=17.4.0" +colorama = {version = "*", markers = "sys_platform == \"win32\""} +more-itertools = ">=4.0.0" +packaging = "*" +pluggy = ">=0.12,<1.0" +py = ">=1.5.0" +wcwidth = "*" + +[package.extras] +checkqa-mypy = ["mypy (==v0.761)"] +testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "requests", "xmlschema"] + +[[package]] +name = "wcwidth" +version = "0.2.5" +description = "Measures the displayed width of unicode strings in a terminal" +category = "dev" +optional = false +python-versions = "*" + +[metadata] +lock-version = "1.1" +python-versions = "^3.8" +content-hash = "c27944f25b55067b06883f1cea204be7d97841a4b8228fab69b91895347494ad" + +[metadata.files] +atomicwrites = [ + {file = "atomicwrites-1.4.0-py2.py3-none-any.whl", hash = "sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197"}, + {file = "atomicwrites-1.4.0.tar.gz", hash = "sha256:ae70396ad1a434f9c7046fd2dd196fc04b12f9e91ffb859164193be8b6168a7a"}, +] +attrs = [ + {file = "attrs-21.4.0-py2.py3-none-any.whl", hash = "sha256:2d27e3784d7a565d36ab851fe94887c5eccd6a463168875832a1be79c82828b4"}, + {file = "attrs-21.4.0.tar.gz", hash = "sha256:626ba8234211db98e869df76230a137c4c40a12d72445c45d5f5b716f076e2fd"}, +] +colorama = [ + {file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"}, + {file = "colorama-0.4.4.tar.gz", hash = "sha256:5941b2b48a20143d2267e95b1c2a7603ce057ee39fd88e7329b0c292aa16869b"}, +] +more-itertools = [ + {file = "more-itertools-8.12.0.tar.gz", hash = "sha256:7dc6ad46f05f545f900dd59e8dfb4e84a4827b97b3cfecb175ea0c7d247f6064"}, + {file = "more_itertools-8.12.0-py3-none-any.whl", hash = "sha256:43e6dd9942dffd72661a2c4ef383ad7da1e6a3e968a927ad7a6083ab410a688b"}, +] +packaging = [ + {file = "packaging-21.3-py3-none-any.whl", hash = "sha256:ef103e05f519cdc783ae24ea4e2e0f508a9c99b2d4969652eed6a2e1ea5bd522"}, + {file = "packaging-21.3.tar.gz", hash = "sha256:dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb"}, +] +pluggy = [ + {file = "pluggy-0.13.1-py2.py3-none-any.whl", hash = "sha256:966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d"}, + {file = "pluggy-0.13.1.tar.gz", hash = "sha256:15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0"}, +] +py = [ + {file = "py-1.11.0-py2.py3-none-any.whl", hash = "sha256:607c53218732647dff4acdfcd50cb62615cedf612e72d1724fb1a0cc6405b378"}, + {file = "py-1.11.0.tar.gz", hash = "sha256:51c75c4126074b472f746a24399ad32f6053d1b34b68d2fa41e558e6f4a98719"}, +] +pyparsing = [ + {file = "pyparsing-3.0.7-py3-none-any.whl", hash = "sha256:a6c06a88f252e6c322f65faf8f418b16213b51bdfaece0524c1c1bc30c63c484"}, + {file = "pyparsing-3.0.7.tar.gz", hash = "sha256:18ee9022775d270c55187733956460083db60b37d0d0fb357445f3094eed3eea"}, +] +pytest = [ + {file = "pytest-5.4.3-py3-none-any.whl", hash = "sha256:5c0db86b698e8f170ba4582a492248919255fcd4c79b1ee64ace34301fb589a1"}, + {file = "pytest-5.4.3.tar.gz", hash = "sha256:7979331bfcba207414f5e1263b5a0f8f521d0f457318836a7355531ed1a4c7d8"}, +] +wcwidth = [ + {file = "wcwidth-0.2.5-py2.py3-none-any.whl", hash = "sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784"}, + {file = "wcwidth-0.2.5.tar.gz", hash = "sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"}, +] diff --git a/pythonflake-python2nix/pyproject.toml b/pythonflake-python2nix/pyproject.toml new file mode 100644 index 0000000..637a17d --- /dev/null +++ b/pythonflake-python2nix/pyproject.toml @@ -0,0 +1,18 @@ +[tool.poetry] +name = "pythonflake" +version = "0.1.0" +description = "" +authors = ["harris-chris "] + +[tool.poetry.scripts] +pythonflake = 'pythonflake:main' + +[tool.poetry.dependencies] +python = "^3.8" + +[tool.poetry.dev-dependencies] +pytest = "^5.2" + +[build-system] +requires = ["poetry-core>=1.0.0"] +build-backend = "poetry.core.masonry.api" diff --git a/pythonflake-python2nix/pythonflake/__init__.py b/pythonflake-python2nix/pythonflake/__init__.py new file mode 100644 index 0000000..d37e323 --- /dev/null +++ b/pythonflake-python2nix/pythonflake/__init__.py @@ -0,0 +1,7 @@ +__version__ = '0.1.0' + +def main(): + print("popping smoke") + +if __name__ == '__main__': + main() diff --git a/pythonflake-python2nix/tests/__init__.py b/pythonflake-python2nix/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pythonflake-python2nix/tests/test_pythonflake.py b/pythonflake-python2nix/tests/test_pythonflake.py new file mode 100644 index 0000000..c583149 --- /dev/null +++ b/pythonflake-python2nix/tests/test_pythonflake.py @@ -0,0 +1,5 @@ +from pythonflake import __version__ + + +def test_version(): + assert __version__ == '0.1.0'