nix updates
This commit is contained in:
parent
9e6869c68d
commit
a5b7198beb
40
flake.nix
40
flake.nix
|
@ -7,17 +7,19 @@
|
||||||
forAllSystems = nixpkgs.lib.genAttrs supportedSystems;
|
forAllSystems = nixpkgs.lib.genAttrs supportedSystems;
|
||||||
pkgs = forAllSystems (system: nixpkgs.legacyPackages.${system});
|
pkgs = forAllSystems (system: nixpkgs.legacyPackages.${system});
|
||||||
lib = forAllSystems (system: nixpkgs.legacyPackages.${system}).lib;
|
lib = forAllSystems (system: nixpkgs.legacyPackages.${system}).lib;
|
||||||
types = forAllSystems (system: nixpkgs.legacyPackages.${system}).types;
|
types = forAllSystems (system: nixpkgs.legacyPackages.${system}).lib.types;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
packages = forAllSystems (system: let
|
packages = forAllSystems (system:
|
||||||
|
let
|
||||||
python = pkgs.${system}.python3.withPackages (ps: [ps.flask ps.flask-socketio]);
|
python = pkgs.${system}.python3.withPackages (ps: [ps.flask ps.flask-socketio]);
|
||||||
ozaiWebui = import ./default.nix { inherit (pkgs.${system}) pkgs; };
|
ozaiWebui = import ./default.nix { inherit (pkgs.${system}) pkgs; };
|
||||||
in {
|
in {
|
||||||
default = ozaiWebui;
|
default = ozaiWebui;
|
||||||
});
|
});
|
||||||
|
|
||||||
devShells = forAllSystems (system: let
|
devShells = forAllSystems (system:
|
||||||
|
let
|
||||||
python = pkgs.${system}.python3.withPackages (ps: [ps.flask ps.flask-socketio]);
|
python = pkgs.${system}.python3.withPackages (ps: [ps.flask ps.flask-socketio]);
|
||||||
in {
|
in {
|
||||||
default = pkgs.${system}.mkShellNoCC {
|
default = pkgs.${system}.mkShellNoCC {
|
||||||
|
@ -29,6 +31,8 @@
|
||||||
|
|
||||||
nixosModules = forAllSystems (system: let
|
nixosModules = forAllSystems (system: let
|
||||||
ozaiWebui = import ./default.nix { inherit (pkgs.${system}) pkgs; };
|
ozaiWebui = import ./default.nix { inherit (pkgs.${system}) pkgs; };
|
||||||
|
lib = pkgs.${system}.lib;
|
||||||
|
types = pkgs.${system}.lib.types;
|
||||||
in {
|
in {
|
||||||
ozai-webui = { config, pkgs, ... }: {
|
ozai-webui = { config, pkgs, ... }: {
|
||||||
options.services.ozai-webui = {
|
options.services.ozai-webui = {
|
||||||
|
@ -60,7 +64,7 @@
|
||||||
after = [ "network.target" ];
|
after = [ "network.target" ];
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
ExecStart = "${ozaiWebui}/bin/ozai-webui --port ${toString config.services.ozai-webui.port} --host '${config.services.ozai-webui.host}' --ozai_url '${config.services.ozai-webui.ozaiUrl}' --secret_key '${config.services.ozai-webui.secretKey}'";
|
ExecStart = "${ozaiWebui}/bin/ozai-webui --port ${toString config.services.ozai-webui.port} --host '${config.services.ozai-webui.host}' --ozai_url '${config.services.ozai-webui.ozaiUrl}' --secret_key '${config.services.ozai-webui.secretKey}' --static_folder '/share/ozai-webui/static' --template_folder '/share/ozai-webui/templates'";
|
||||||
Restart = "always";
|
Restart = "always";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -69,6 +73,34 @@
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
nixosConfigurations = {
|
||||||
|
ozai-webui = nixpkgs.lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
modules = [
|
||||||
|
self.nixosModules.x86_64-linux.ozai-webui
|
||||||
|
{
|
||||||
|
system.stateVersion = "23.11";
|
||||||
|
boot.isContainer = true;
|
||||||
|
services.ozai-webui.enable = true;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# nixosConfigurations = forAllSystems (system: {
|
||||||
|
# ozai-webui = { config, pkgs, ... }: {
|
||||||
|
# modules = [
|
||||||
|
# self.systems.${system}.nixosModules.ozai-webui
|
||||||
|
# {
|
||||||
|
# system.stateVersion = "23.11";
|
||||||
|
# boot.isContainer = true;
|
||||||
|
# services.ozai-webui.enable = true;
|
||||||
|
# }
|
||||||
|
# ];
|
||||||
|
# };
|
||||||
|
# });
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
|
@ -9,8 +9,9 @@ buildPythonApplication rec {
|
||||||
|
|
||||||
#copy the static files to the output
|
#copy the static files to the output
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
cp -r static $out/bin/static
|
mkdir -p $out/share/ozai-webui
|
||||||
cp -r templates $out/bin/templates
|
cp -r static $out/share/ozai-webui/static
|
||||||
|
cp -r templates $out/share/ozai-webui/templates
|
||||||
mv $out/bin/main.py $out/bin/ozai-webui
|
mv $out/bin/main.py $out/bin/ozai-webui
|
||||||
'';
|
'';
|
||||||
}
|
}
|
15
src/main.py
15
src/main.py
|
@ -12,6 +12,8 @@ ozai_url = 'http://localhost:8000/api/'
|
||||||
ozai_webui_host = '0.0.0.0'
|
ozai_webui_host = '0.0.0.0'
|
||||||
ozai_webui_port = 5000
|
ozai_webui_port = 5000
|
||||||
app.config['SECRET_KEY'] = "secret"
|
app.config['SECRET_KEY'] = "secret"
|
||||||
|
static_folder = 'static'
|
||||||
|
template_folder = 'templates'
|
||||||
|
|
||||||
#check if the environment variables are set
|
#check if the environment variables are set
|
||||||
if os.getenv('OZAI_URL') is not None:
|
if os.getenv('OZAI_URL') is not None:
|
||||||
|
@ -22,6 +24,10 @@ if os.getenv('OZAI_WEBUI_PORT') is not None:
|
||||||
ozai_webui_port = int(os.getenv('OZAI_WEBUI_PORT'))
|
ozai_webui_port = int(os.getenv('OZAI_WEBUI_PORT'))
|
||||||
if os.getenv('OZAI_WEBUI_SECRET_KEY') is not None:
|
if os.getenv('OZAI_WEBUI_SECRET_KEY') is not None:
|
||||||
app.config['SECRET_KEY'] = os.getenv('OZAI_WEBUI_SECRET_KEY')
|
app.config['SECRET_KEY'] = os.getenv('OZAI_WEBUI_SECRET_KEY')
|
||||||
|
if os.getenv('OZAI_WEBUI_STATIC_FOLDER') is not None:
|
||||||
|
static_folder = os.getenv('STATIC_FOLDER')
|
||||||
|
if os.getenv('OZAI_WEBUI_TEMPLATE_FOLDER') is not None:
|
||||||
|
template_folder = os.getenv('TEMPLATE_FOLDER')
|
||||||
|
|
||||||
parser = argparse.ArgumentParser(description="Run the Ozai WebUI server")
|
parser = argparse.ArgumentParser(description="Run the Ozai WebUI server")
|
||||||
|
|
||||||
|
@ -29,6 +35,9 @@ parser.add_argument('-H', '--host', type=str, default=ozai_webui_host, help='The
|
||||||
parser.add_argument('-P', '--port', type=int, default=ozai_webui_port, help='The port to run the server on')
|
parser.add_argument('-P', '--port', type=int, default=ozai_webui_port, help='The port to run the server on')
|
||||||
parser.add_argument('-O', '--ozai_url', type=str, default=ozai_url, help='The URL of the Ozai server')
|
parser.add_argument('-O', '--ozai_url', type=str, default=ozai_url, help='The URL of the Ozai server')
|
||||||
parser.add_argument('-S', '--secret_key', type=str, default=app.config['SECRET_KEY'], help='The secret key for the Flask app')
|
parser.add_argument('-S', '--secret_key', type=str, default=app.config['SECRET_KEY'], help='The secret key for the Flask app')
|
||||||
|
parser.add_argument('--static_folder', type=str, default=static_folder, help='The location of the static folder')
|
||||||
|
parser.add_argument('--template_folder', type=str, default=template_folder, help='The location of the template folder')
|
||||||
|
|
||||||
|
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
|
|
||||||
|
@ -40,8 +49,10 @@ if args.ozai_url:
|
||||||
ozai_url = args.ozai_url
|
ozai_url = args.ozai_url
|
||||||
if args.secret_key:
|
if args.secret_key:
|
||||||
app.config['SECRET_KEY'] = args.secret_key
|
app.config['SECRET_KEY'] = args.secret_key
|
||||||
|
if args.static_folder:
|
||||||
|
app.static_folder = args.static_folder
|
||||||
|
if args.template_folder:
|
||||||
|
app.template_folder = args.template_folder
|
||||||
|
|
||||||
|
|
||||||
#home page
|
#home page
|
||||||
|
|
|
@ -11,7 +11,6 @@ requires = (
|
||||||
def read(fname):
|
def read(fname):
|
||||||
return open(os.path.join(os.path.dirname(__file__), fname)).read()
|
return open(os.path.join(os.path.dirname(__file__), fname)).read()
|
||||||
|
|
||||||
|
|
||||||
setup(
|
setup(
|
||||||
name='ozai-webui',
|
name='ozai-webui',
|
||||||
version='0.1.1',
|
version='0.1.1',
|
||||||
|
|
Loading…
Reference in New Issue