test
This commit is contained in:
@@ -1,44 +1,45 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchzip
|
||||
, autoPatchelfHook
|
||||
, makeWrapper
|
||||
# Core dependencies
|
||||
, alsa-lib
|
||||
, at-spi2-core
|
||||
, cairo
|
||||
, cups
|
||||
, dbus
|
||||
, expat
|
||||
, fontconfig
|
||||
, freetype
|
||||
, gdk-pixbuf
|
||||
, glib
|
||||
, gtk3
|
||||
, libarchive
|
||||
, libdrm
|
||||
, libGL
|
||||
, libx11
|
||||
, libxcb
|
||||
, libxext
|
||||
, libxkbcommon
|
||||
, mesa
|
||||
, nspr
|
||||
, nss
|
||||
, pango
|
||||
, systemd
|
||||
, xorg
|
||||
, zlib
|
||||
# Additional CEF/Chromium dependencies
|
||||
, libnotify
|
||||
, libpulseaudio
|
||||
, libuuid
|
||||
, libva
|
||||
, pipewire
|
||||
, udev
|
||||
, wayland
|
||||
, jdk17 # for RuneLite/HDOS
|
||||
, gtk2 ? null # for RS3
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchzip,
|
||||
autoPatchelfHook,
|
||||
makeWrapper,
|
||||
# Core dependencies
|
||||
alsa-lib,
|
||||
at-spi2-core,
|
||||
cairo,
|
||||
cups,
|
||||
dbus,
|
||||
expat,
|
||||
fontconfig,
|
||||
freetype,
|
||||
gdk-pixbuf,
|
||||
glib,
|
||||
gtk3,
|
||||
libarchive,
|
||||
libdrm,
|
||||
libGL,
|
||||
libx11,
|
||||
libxcb,
|
||||
libxext,
|
||||
libxkbcommon,
|
||||
mesa,
|
||||
nspr,
|
||||
nss,
|
||||
pango,
|
||||
systemd,
|
||||
xorg,
|
||||
zlib,
|
||||
# Additional CEF/Chromium dependencies
|
||||
libnotify,
|
||||
libpulseaudio,
|
||||
libuuid,
|
||||
libva,
|
||||
pipewire,
|
||||
udev,
|
||||
wayland,
|
||||
jdk17 # for RuneLite/HDOS
|
||||
, # for RS3
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@@ -79,7 +80,7 @@ stdenv.mkDerivation rec {
|
||||
nspr
|
||||
nss
|
||||
pango
|
||||
stdenv.cc.cc.lib # for libstdc++.so.6
|
||||
stdenv.cc.cc.lib # for libstdc++.so.6
|
||||
systemd
|
||||
zlib
|
||||
# Additional CEF/Chromium deps
|
||||
@@ -90,7 +91,8 @@ stdenv.mkDerivation rec {
|
||||
pipewire
|
||||
udev
|
||||
wayland
|
||||
] ++ (with xorg; [
|
||||
]
|
||||
++ (with xorg; [
|
||||
libXcomposite
|
||||
libXcursor
|
||||
libXdamage
|
||||
@@ -119,10 +121,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
# Copy all files to lib directory
|
||||
cp -r ./bolt-launcher/* $out/lib/bolt-launcher/
|
||||
|
||||
|
||||
# The main executable is 'bolt' (lowercase)
|
||||
chmod +x $out/lib/bolt-launcher/bolt
|
||||
|
||||
|
||||
# Also make chrome-sandbox executable (needed for CEF)
|
||||
if [ -f $out/lib/bolt-launcher/chrome-sandbox ]; then
|
||||
chmod +x $out/lib/bolt-launcher/chrome-sandbox
|
||||
@@ -155,7 +157,7 @@ stdenv.mkDerivation rec {
|
||||
# Make sure they can find each other
|
||||
patchelf --set-rpath "$out/lib/bolt-launcher:${lib.makeLibraryPath buildInputs}" \
|
||||
$out/lib/bolt-launcher/bolt || true
|
||||
|
||||
|
||||
# Patch the CEF libraries
|
||||
for lib in $out/lib/bolt-launcher/*.so*; do
|
||||
if [ -f "$lib" ]; then
|
||||
@@ -168,8 +170,11 @@ stdenv.mkDerivation rec {
|
||||
description = "Free open-source third-party implementation of the Jagex Launcher";
|
||||
homepage = "https://bolt.adamcake.com/";
|
||||
license = licenses.agpl3Only;
|
||||
platforms = [ "x86_64-linux" "aarch64-linux" ];
|
||||
platforms = [
|
||||
"x86_64-linux"
|
||||
"aarch64-linux"
|
||||
];
|
||||
maintainers = with maintainers; [ ];
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ buildHomeAssistantComponent rec {
|
||||
beautifulsoup4
|
||||
];
|
||||
|
||||
meta = {
|
||||
meta = {
|
||||
changelog = "https://github.com/natekspencer/ha-bedjet/releases/tag/${version}";
|
||||
description = "This project provides various entities to allow control of a BedJet device.";
|
||||
homepage = "https://github.com/natekspencer/ha-bedjet";
|
||||
|
||||
@@ -7,4 +7,4 @@ fetchNextcloudApp {
|
||||
sha256 = "sha256-F2hh/0RlLG2zcEatfd4fejRV0i2hMkwONM4P7nhdh18=";
|
||||
url = "https://github.com/nextcloud/photos/archive/refs/tags/v31.0.8.tar.gz";
|
||||
license = "agpl3Only";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,20 +29,22 @@ python3Packages.buildPythonPackage rec {
|
||||
|
||||
build-system = with python3Packages; [ poetry-core ];
|
||||
|
||||
dependencies = with python3Packages; [
|
||||
aiohttp
|
||||
aiomqtt
|
||||
async-timeout
|
||||
click
|
||||
construct
|
||||
dacite
|
||||
paho-mqtt
|
||||
pycryptodome
|
||||
pyrate-limiter
|
||||
vacuum-map-parser-roborock
|
||||
pyshark
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [ pycryptodomex ];
|
||||
dependencies =
|
||||
with python3Packages;
|
||||
[
|
||||
aiohttp
|
||||
aiomqtt
|
||||
async-timeout
|
||||
click
|
||||
construct
|
||||
dacite
|
||||
paho-mqtt
|
||||
pycryptodome
|
||||
pyrate-limiter
|
||||
vacuum-map-parser-roborock
|
||||
pyshark
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [ pycryptodomex ];
|
||||
|
||||
nativeCheckInputs = with python3Packages; [
|
||||
aioresponses
|
||||
@@ -61,4 +63,4 @@ python3Packages.buildPythonPackage rec {
|
||||
maintainers = with maintainers; [ fab ];
|
||||
mainProgram = "roborock";
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,4 +35,4 @@ python3Packages.buildPythonPackage rec {
|
||||
license = with licenses; [ mit ];
|
||||
maintainers = with maintainers; [ fab ];
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
|
||||
# Set up yarn
|
||||
export HOME=$TMPDIR
|
||||
cd frontend
|
||||
|
||||
|
||||
# Fix up yarn.lock and set up offline cache
|
||||
fixup-yarn-lock yarn.lock
|
||||
yarn config --offline set yarn-offline-mirror ${yarnDeps}
|
||||
@@ -82,98 +82,107 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
runHook preInstall
|
||||
|
||||
# Create output directories
|
||||
mkdir -p $out/lib/tabby-web
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $out/share/tabby-web
|
||||
# Create output directories
|
||||
mkdir -p $out/lib/tabby-web
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $out/share/tabby-web
|
||||
|
||||
# Install backend
|
||||
cp -r backend/* $out/lib/tabby-web/
|
||||
|
||||
# Install frontend build output
|
||||
if [ -d frontend/dist ]; then
|
||||
cp -r frontend/dist/* $out/share/tabby-web/
|
||||
elif [ -d frontend/build ]; then
|
||||
cp -r frontend/build/* $out/share/tabby-web/
|
||||
fi
|
||||
# Install backend
|
||||
cp -r backend/* $out/lib/tabby-web/
|
||||
|
||||
# Install frontend build output
|
||||
if [ -d frontend/dist ]; then
|
||||
cp -r frontend/dist/* $out/share/tabby-web/
|
||||
elif [ -d frontend/build ]; then
|
||||
cp -r frontend/build/* $out/share/tabby-web/
|
||||
fi
|
||||
|
||||
# Create main executable wrapper
|
||||
makeWrapper ${python3.withPackages (ps: with ps; [ gunicorn django ])}/bin/python $out/bin/tabby-web \
|
||||
--add-flags "-m gunicorn tabby_web.wsgi:application" \
|
||||
--set PYTHONPATH "$out/lib/tabby-web" \
|
||||
--set DJANGO_SETTINGS_MODULE "tabby_web.settings" \
|
||||
--set STATIC_ROOT "$out/share/tabby-web" \
|
||||
--run "cd $out/lib/tabby-web" \
|
||||
--run 'export DATABASE_URL="''${DATABASE_URL:-sqlite:///tmp/tabby-web.db}"' \
|
||||
--run 'export APP_DIST_STORAGE="''${APP_DIST_STORAGE:-file:///tmp/tabby-web-dist}"' \
|
||||
--run 'export PORT="''${PORT:-9000}"' \
|
||||
--add-flags '--bind "0.0.0.0:$PORT"' \
|
||||
--add-flags "--workers 4" \
|
||||
--add-flags "--timeout 120"
|
||||
# Create main executable wrapper
|
||||
makeWrapper ${
|
||||
python3.withPackages (
|
||||
ps: with ps; [
|
||||
gunicorn
|
||||
django
|
||||
]
|
||||
)
|
||||
}/bin/python $out/bin/tabby-web \
|
||||
--add-flags "-m gunicorn tabby_web.wsgi:application" \
|
||||
--set PYTHONPATH "$out/lib/tabby-web" \
|
||||
--set DJANGO_SETTINGS_MODULE "tabby_web.settings" \
|
||||
--set STATIC_ROOT "$out/share/tabby-web" \
|
||||
--run "cd $out/lib/tabby-web" \
|
||||
--run 'export DATABASE_URL="''${DATABASE_URL:-sqlite:///tmp/tabby-web.db}"' \
|
||||
--run 'export APP_DIST_STORAGE="''${APP_DIST_STORAGE:-file:///tmp/tabby-web-dist}"' \
|
||||
--run 'export PORT="''${PORT:-9000}"' \
|
||||
--add-flags '--bind "0.0.0.0:$PORT"' \
|
||||
--add-flags "--workers 4" \
|
||||
--add-flags "--timeout 120"
|
||||
|
||||
# Create Django management wrapper
|
||||
makeWrapper ${python3.withPackages (ps: with ps; [ django ])}/bin/python $out/bin/tabby-web-manage \
|
||||
--add-flags "manage.py" \
|
||||
--set PYTHONPATH "$out/lib/tabby-web" \
|
||||
--set DJANGO_SETTINGS_MODULE "tabby_web.settings" \
|
||||
--set STATIC_ROOT "$out/share/tabby-web" \
|
||||
--run "cd $out/lib/tabby-web" \
|
||||
--run 'export DATABASE_URL="''${DATABASE_URL:-sqlite:///tmp/tabby-web.db}"' \
|
||||
--run 'export APP_DIST_STORAGE="''${APP_DIST_STORAGE:-file:///tmp/tabby-web-dist}"'
|
||||
# Create Django management wrapper
|
||||
makeWrapper ${
|
||||
python3.withPackages (ps: with ps; [ django ])
|
||||
}/bin/python $out/bin/tabby-web-manage \
|
||||
--add-flags "manage.py" \
|
||||
--set PYTHONPATH "$out/lib/tabby-web" \
|
||||
--set DJANGO_SETTINGS_MODULE "tabby_web.settings" \
|
||||
--set STATIC_ROOT "$out/share/tabby-web" \
|
||||
--run "cd $out/lib/tabby-web" \
|
||||
--run 'export DATABASE_URL="''${DATABASE_URL:-sqlite:///tmp/tabby-web.db}"' \
|
||||
--run 'export APP_DIST_STORAGE="''${APP_DIST_STORAGE:-file:///tmp/tabby-web-dist}"'
|
||||
|
||||
# Create a help script
|
||||
cat > $out/bin/tabby-web-help << 'HELP_EOF'
|
||||
#!/bin/bash
|
||||
cat << 'HELP'
|
||||
Tabby Web - Terminal application server
|
||||
# Create a help script
|
||||
cat > $out/bin/tabby-web-help << 'HELP_EOF'
|
||||
#!/bin/bash
|
||||
cat << 'HELP'
|
||||
Tabby Web - Terminal application server
|
||||
|
||||
Usage:
|
||||
tabby-web Start the server
|
||||
tabby-web-manage <command> Run Django management commands
|
||||
tabby-web-help Show this help
|
||||
Usage:
|
||||
tabby-web Start the server
|
||||
tabby-web-manage <command> Run Django management commands
|
||||
tabby-web-help Show this help
|
||||
|
||||
Environment Variables:
|
||||
DATABASE_URL Database connection URL
|
||||
Examples: sqlite:///path/to/db.sqlite
|
||||
postgresql://user:pass@host:5432/dbname
|
||||
|
||||
APP_DIST_STORAGE Storage URL for app distributions
|
||||
Examples: file:///path/to/storage
|
||||
s3://bucket-name/path
|
||||
gcs://bucket-name/path
|
||||
|
||||
PORT Server port (default: 9000)
|
||||
|
||||
Social Authentication (optional):
|
||||
SOCIAL_AUTH_GITHUB_KEY GitHub OAuth key
|
||||
SOCIAL_AUTH_GITHUB_SECRET GitHub OAuth secret
|
||||
SOCIAL_AUTH_GITLAB_KEY GitLab OAuth key
|
||||
SOCIAL_AUTH_GITLAB_SECRET GitLab OAuth secret
|
||||
SOCIAL_AUTH_MICROSOFT_GRAPH_KEY Microsoft Graph OAuth key
|
||||
SOCIAL_AUTH_MICROSOFT_GRAPH_SECRET Microsoft Graph OAuth secret
|
||||
SOCIAL_AUTH_GOOGLE_OAUTH2_KEY Google OAuth2 key
|
||||
SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET Google OAuth2 secret
|
||||
Environment Variables:
|
||||
DATABASE_URL Database connection URL
|
||||
Examples: sqlite:///path/to/db.sqlite
|
||||
postgresql://user:pass@host:5432/dbname
|
||||
|
||||
APP_DIST_STORAGE Storage URL for app distributions
|
||||
Examples: file:///path/to/storage
|
||||
s3://bucket-name/path
|
||||
gcs://bucket-name/path
|
||||
|
||||
PORT Server port (default: 9000)
|
||||
|
||||
Social Authentication (optional):
|
||||
SOCIAL_AUTH_GITHUB_KEY GitHub OAuth key
|
||||
SOCIAL_AUTH_GITHUB_SECRET GitHub OAuth secret
|
||||
SOCIAL_AUTH_GITLAB_KEY GitLab OAuth key
|
||||
SOCIAL_AUTH_GITLAB_SECRET GitLab OAuth secret
|
||||
SOCIAL_AUTH_MICROSOFT_GRAPH_KEY Microsoft Graph OAuth key
|
||||
SOCIAL_AUTH_MICROSOFT_GRAPH_SECRET Microsoft Graph OAuth secret
|
||||
SOCIAL_AUTH_GOOGLE_OAUTH2_KEY Google OAuth2 key
|
||||
SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET Google OAuth2 secret
|
||||
|
||||
Examples:
|
||||
# Development with defaults
|
||||
tabby-web
|
||||
|
||||
# Production with PostgreSQL
|
||||
DATABASE_URL="postgresql://user:pass@localhost:5432/tabby" tabby-web
|
||||
|
||||
# Run migrations
|
||||
tabby-web-manage migrate
|
||||
|
||||
# Add app version
|
||||
tabby-web-manage add_version 1.0.156-nightly.2
|
||||
HELP
|
||||
HELP_EOF
|
||||
Examples:
|
||||
# Development with defaults
|
||||
tabby-web
|
||||
|
||||
# Production with PostgreSQL
|
||||
DATABASE_URL="postgresql://user:pass@localhost:5432/tabby" tabby-web
|
||||
|
||||
# Run migrations
|
||||
tabby-web-manage migrate
|
||||
|
||||
# Add app version
|
||||
tabby-web-manage add_version 1.0.156-nightly.2
|
||||
HELP
|
||||
HELP_EOF
|
||||
|
||||
chmod +x $out/bin/tabby-web-help
|
||||
chmod +x $out/bin/tabby-web-help
|
||||
|
||||
runHook postInstall
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
|
||||
Reference in New Issue
Block a user