summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/overlays/default.nix1
-rw-r--r--modules/overlays/marsironpi.nix2
-rw-r--r--pkgs/all-packages.nix5
-rw-r--r--pkgs/flake.lock27
-rw-r--r--pkgs/flake.nix11
-rw-r--r--pkgs/oauth2token.nix29
-rwxr-xr-xpkgs/update-lock9
7 files changed, 84 insertions, 0 deletions
diff --git a/modules/overlays/default.nix b/modules/overlays/default.nix
index 4690165..5b92c6d 100644
--- a/modules/overlays/default.nix
+++ b/modules/overlays/default.nix
@@ -16,6 +16,7 @@ in
options.this.overlays = {
emacs.enable = lib.mkEnableOption "custom-built Emacs overlay";
g45_h264.enable = lib.mkEnableOption "intel-vaapi-driver with h264 support on gm45";
+ marsironpi.enable = lib.mkEnableOption "custom repository of packages" // { default = true; };
};
config = {
diff --git a/modules/overlays/marsironpi.nix b/modules/overlays/marsironpi.nix
new file mode 100644
index 0000000..07de839
--- /dev/null
+++ b/modules/overlays/marsironpi.nix
@@ -0,0 +1,2 @@
+final: prev:
+import ../../pkgs/all-packages.nix prev
diff --git a/pkgs/all-packages.nix b/pkgs/all-packages.nix
new file mode 100644
index 0000000..d214742
--- /dev/null
+++ b/pkgs/all-packages.nix
@@ -0,0 +1,5 @@
+{ pkgs, ... }:
+
+{
+ oauth2token = pkgs.python3Packages.callPackage ./oauth2token.nix {};
+}
diff --git a/pkgs/flake.lock b/pkgs/flake.lock
new file mode 100644
index 0000000..345934f
--- /dev/null
+++ b/pkgs/flake.lock
@@ -0,0 +1,27 @@
+{
+ "nodes": {
+ "nixpkgs": {
+ "locked": {
+ "lastModified": 1750005367,
+ "narHash": "sha256-h/aac1dGLhS3qpaD2aZt25NdKY7b+JT0ZIP2WuGsJMU=",
+ "owner": "nixos",
+ "repo": "nixpkgs",
+ "rev": "6c64dabd3aa85e0c02ef1cdcb6e1213de64baee3",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nixos",
+ "ref": "nixos-25.05",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "root": {
+ "inputs": {
+ "nixpkgs": "nixpkgs"
+ }
+ }
+ },
+ "root": "root",
+ "version": 7
+}
diff --git a/pkgs/flake.nix b/pkgs/flake.nix
new file mode 100644
index 0000000..72e562c
--- /dev/null
+++ b/pkgs/flake.nix
@@ -0,0 +1,11 @@
+{
+ inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05";
+ outputs = { nixpkgs, self }:
+ let eachSystem = f: nixpkgs.lib.genAttrs
+ nixpkgs.lib.systems.flakeExposed
+ (s: f nixpkgs.legacyPackages.${s});
+ in {
+ packages = eachSystem (pkgs:
+ import ./all-packages.nix { inherit pkgs; });
+ };
+}
diff --git a/pkgs/oauth2token.nix b/pkgs/oauth2token.nix
new file mode 100644
index 0000000..791de4f
--- /dev/null
+++ b/pkgs/oauth2token.nix
@@ -0,0 +1,29 @@
+{
+ lib,
+ buildPythonPackage,
+ fetchPypi,
+ pyxdg,
+ google-auth-oauthlib,
+}:
+
+buildPythonPackage rec {
+ pname = "oauth2token";
+ version = "0.0.3";
+
+ src = fetchPypi {
+ inherit pname version;
+ hash = "sha256-3wJHPYP74rTdqAfVKZ7LrzwP4tCeV+VRasoqs1uw/vg=";
+ };
+
+ propagatedBuildInputs = [
+ pyxdg
+ google-auth-oauthlib
+ ];
+
+ meta = with lib; {
+ description = "Simple cli tools to create and use oauth2token";
+ homepage = "https://github.com/VannTen/oauth2token";
+ license = licenses.gpl3;
+ maintainers = [];
+ };
+}
diff --git a/pkgs/update-lock b/pkgs/update-lock
new file mode 100755
index 0000000..8690241
--- /dev/null
+++ b/pkgs/update-lock
@@ -0,0 +1,9 @@
+#!/usr/bin/ruby
+require "json"
+
+dir = File.dirname $0
+lock = JSON.parse(File.read(File.expand_path "#{dir}/../flake.lock"))
+lock.merge!({"nodes" => lock["nodes"]
+ .filter {|k| ["nixpkgs", "root"].include? k }
+ .merge({"root" => {"inputs" => {"nixpkgs" => "nixpkgs"}}})})
+File.write "#{dir}/flake.lock", JSON.pretty_generate(lock)+"\n"