lungo-cli
Advanced tools
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
+2
-2
| Metadata-Version: 2.1 | ||
| Name: lungo-cli | ||
| Version: 0.5.7 | ||
| Version: 0.5.8 | ||
| Summary: A user-friendly home lab setup designed for small-to-mid-scale on-premises hosting. | ||
@@ -18,3 +18,3 @@ Home-page: https://github.com/raymond-u/lungo | ||
| Requires-Dist: pydantic-yaml (>=1.3.0,<2.0.0) | ||
| Requires-Dist: pydantic[email] (>=2.7.4,<3.0.0) | ||
| Requires-Dist: pydantic[email] (>=2.8.2,<3.0.0) | ||
| Requires-Dist: requests (>=2.32.3,<3.0.0) | ||
@@ -21,0 +21,0 @@ Requires-Dist: typer (>=0.12.3,<0.13.0) |
+3
-3
@@ -6,3 +6,3 @@ [tool.black] | ||
| name = "lungo-cli" | ||
| version = "0.5.7" | ||
| version = "0.5.8" | ||
| description = "A user-friendly home lab setup designed for small-to-mid-scale on-premises hosting." | ||
@@ -23,3 +23,3 @@ authors = ["raymond-u <36328498+raymond-u@users.noreply.github.com>"] | ||
| platformdirs = "^4.2.2" | ||
| pydantic = { extras = ["email"], version = "^2.7.4" } | ||
| pydantic = { extras = ["email"], version = "^2.8.2" } | ||
| pydantic-yaml = "^1.3.0" | ||
@@ -38,3 +38,3 @@ requests = "^2.32.3" | ||
| mkdocs-glightbox = "^0.4.0" | ||
| mkdocs-material = "^9.5.27" | ||
| mkdocs-material = "^9.5.30" | ||
| mkdocs-typer = "^0.0.3" | ||
@@ -41,0 +41,0 @@ |
@@ -14,7 +14,7 @@ import platform | ||
| OPENRESTY_VERSION: Final = "1.25.3.1-alpine-apk" | ||
| OPENRESTY_VERSION: Final = "1.25.3.2-alpine-apk" | ||
| KETO_VERSION: Final = "v0.12.0" | ||
| KRATOS_VERSION: Final = "v1.1.0" | ||
| OATHKEEPER_VERSION: Final = "v0.40.7" | ||
| NODE_VERSION: Final = "20.15.0-alpine" | ||
| NODE_VERSION: Final = "20.16.0-alpine" | ||
@@ -21,0 +21,0 @@ KETO_ADMIN_API_BASE_URL: Final = "http://127.0.0.1:3939" |
@@ -49,2 +49,3 @@ {% set plugin_name = plugin.manifest.name %} | ||
| include snippets/auth.conf; | ||
| proxy_read_timeout 3600s; | ||
| proxy_send_timeout 3600s; | ||
@@ -51,0 +52,0 @@ |
@@ -9,3 +9,3 @@ from typing import Any, override | ||
| name="filebrowser", | ||
| version="0.3.0", | ||
| version="0.3.1", | ||
| descriptive_name="File Browser", | ||
@@ -12,0 +12,0 @@ description="File Browser as a Lungo plugin.", |
@@ -23,3 +23,4 @@ {% set directories = config.directories %} | ||
| volumes: | ||
| - '{{ plugin.dirs.plugin_dir }}/config:/etc/jupyterhub:ro' | ||
| - '{{ plugin.dirs.plugin_dir }}/config/config.py:/etc/jupyterhub/config.py:ro' | ||
| - '{{ plugin.dirs.plugin_dir }}/config/sudoers:/etc/sudoers:ro' | ||
| - '{{ plugin.dirs.managed_dir }}:/srv/jupyterhub:rw' | ||
@@ -26,0 +27,0 @@ {% for account in users.accounts %} |
| FROM docker.io/jupyterhub/jupyterhub:{{ plugin.custom.jupyterhub_version }} | ||
| RUN python3 -m pip install --no-cache-dir --upgrade setuptools pip && \ | ||
| RUN apt-get update && \ | ||
| apt-get install -y sudo && \ | ||
| rm -rf /var/lib/apt/lists/* && \ | ||
| python3 -m pip install --no-cache-dir --upgrade setuptools pip && \ | ||
| python3 -m pip install --no-cache-dir 'jupyterlab=={{ plugin.custom.jupyterlab_version }}' | ||
@@ -4,0 +7,0 @@ RUN \ |
@@ -38,2 +38,3 @@ {% set plugin_name = plugin.manifest.name %} | ||
| include snippets/auth.conf; | ||
| proxy_read_timeout 3600s; | ||
| proxy_send_timeout 3600s; | ||
@@ -40,0 +41,0 @@ |
@@ -15,3 +15,3 @@ from pathlib import Path | ||
| name="jupyterhub", | ||
| version="0.3.1", | ||
| version="0.3.2", | ||
| descriptive_name="JupyterHub", | ||
@@ -44,3 +44,3 @@ description="JupyterHub as a Lungo plugin.", | ||
| "jupyterhub_version": "4.1.5", | ||
| "jupyterlab_version": "4.2.3", | ||
| "jupyterlab_version": "4.2.4", | ||
| } | ||
@@ -47,0 +47,0 @@ |
@@ -10,3 +10,3 @@ from pathlib import Path | ||
| name="privatebin", | ||
| version="0.3.0", | ||
| version="0.3.1", | ||
| descriptive_name="Pastebin", | ||
@@ -28,3 +28,3 @@ description="PrivateBin as a Lungo plugin.", | ||
| def get_custom_rendering_context(self) -> dict[str, Any]: | ||
| return {"privatebin_version": "1.7.3"} | ||
| return {"privatebin_version": "1.7.4"} | ||
@@ -31,0 +31,0 @@ @override |
@@ -25,2 +25,3 @@ {% set directories = config.directories %} | ||
| - '{{ plugin.dirs.plugin_dir }}/config/rsession.conf:/etc/rstudio/rsession.conf:ro' | ||
| - '{{ plugin.dirs.plugin_dir }}/config/sudoers:/etc/sudoers:ro' | ||
| - '{{ plugin.dirs.managed_dir }}:/var/lib/rstudio-server:rw' | ||
@@ -27,0 +28,0 @@ {% for account in users.accounts %} |
@@ -38,2 +38,3 @@ {% set plugin_name = plugin.manifest.name %} | ||
| include snippets/auth.conf; | ||
| proxy_read_timeout 3600s; | ||
| proxy_send_timeout 3600s; | ||
@@ -40,0 +41,0 @@ |
@@ -15,3 +15,3 @@ from pathlib import Path | ||
| name="rstudio", | ||
| version="0.3.0", | ||
| version="0.3.1", | ||
| descriptive_name="RStudio", | ||
@@ -18,0 +18,0 @@ description="RStudio as a Lungo plugin.", |
@@ -10,3 +10,3 @@ <script lang="ts"> | ||
| <div class="flex flex-col items-center"> | ||
| <span class="h-24 w-24 py-2"> | ||
| <span class="size-24 py-2"> | ||
| <ScreenCastIcon /> | ||
@@ -13,0 +13,0 @@ </span> |
@@ -17,2 +17,3 @@ {% set plugin_name = plugin.manifest.name %} | ||
| include snippets/proxy.conf; | ||
| proxy_read_timeout 3600s; | ||
| proxy_send_timeout 3600s; | ||
@@ -19,0 +20,0 @@ |
@@ -19,3 +19,3 @@ from ipaddress import IPv4Network | ||
| name="xray", | ||
| version="0.3.1", | ||
| version="0.3.2", | ||
| descriptive_name="Xray", | ||
@@ -49,3 +49,3 @@ description="Xray as a Lungo plugin.", | ||
| "xray_salt": salt, | ||
| "xray_version": "1.8.16", | ||
| "xray_version": "1.8.21", | ||
| } | ||
@@ -52,0 +52,0 @@ |
@@ -1,2 +0,2 @@ | ||
| highlight.js@^11.9.0 | ||
| uuid@^9.0.1 | ||
| highlight.js@^11.10.0 | ||
| uuid@^10.0.0 |
@@ -114,3 +114,3 @@ <script lang="ts"> | ||
| <div class="flex flex-col items-center"> | ||
| <span class="h-24 w-24 py-2"> | ||
| <span class="size-24 py-2"> | ||
| <NetworkLockIcon /> | ||
@@ -117,0 +117,0 @@ </span> |
@@ -46,3 +46,4 @@ {% set network = config.network %} | ||
| ## Advanced Proxy Configuration | ||
| proxy_read_timeout 3600s; | ||
| proxy_send_timeout 3600s; | ||
| proxy_connect_timeout 10s; |
@@ -20,9 +20,9 @@ { | ||
| "@sveltejs/adapter-node": "^5.2.0", | ||
| "@sveltejs/enhanced-img": "^0.3.0", | ||
| "@sveltejs/kit": "^2.5.17", | ||
| "@sveltejs/enhanced-img": "^0.3.1", | ||
| "@sveltejs/kit": "^2.5.18", | ||
| "@sveltejs/vite-plugin-svelte": "^3.1.1", | ||
| "@tailwindcss/typography": "^0.5.13", | ||
| "@types/set-cookie-parser": "^2.4.9", | ||
| "@typescript-eslint/eslint-plugin": "^7.14.1", | ||
| "@typescript-eslint/parser": "^7.14.1", | ||
| "@types/set-cookie-parser": "^2.4.10", | ||
| "@typescript-eslint/eslint-plugin": "^7.17.0", | ||
| "@typescript-eslint/parser": "^7.17.0", | ||
| "autoprefixer": "^10.4.19", | ||
@@ -32,16 +32,15 @@ "daisyui": "^4.12.10", | ||
| "eslint-config-prettier": "^9.1.0", | ||
| "eslint-plugin-svelte": "^2.41.0", | ||
| "json-schema-to-typescript": "^14.1.0", | ||
| "eslint-plugin-svelte": "^2.43.0", | ||
| "json-schema-to-typescript": "^15.0.0", | ||
| "openapi-typescript": "^6.7.6", | ||
| "postcss": "^8.4.38", | ||
| "postcss": "^8.4.40", | ||
| "postcss-load-config": "^4.0.2", | ||
| "prettier": "^3.3.2", | ||
| "prettier-plugin-svelte": "^3.2.5", | ||
| "prettier": "^3.3.3", | ||
| "prettier-plugin-svelte": "^3.2.6", | ||
| "prettier-plugin-tailwindcss": "^0.6.5", | ||
| "svelte": "^4.2.18", | ||
| "svelte-check": "^3.8.4", | ||
| "tailwindcss": "^3.4.4", | ||
| "tslib": "^2.6.3", | ||
| "typescript": "^5.5.2", | ||
| "vite": "^5.3.1" | ||
| "tailwindcss": "^3.4.7", | ||
| "typescript": "^5.5.4", | ||
| "vite": "^5.3.5" | ||
| }, | ||
@@ -53,3 +52,3 @@ "type": "module", | ||
| }, | ||
| "packageManager": "pnpm@8.15.8" | ||
| "packageManager": "pnpm@8.15.9" | ||
| } |
@@ -41,3 +41,3 @@ <script lang="ts"> | ||
| <a href="/account"> | ||
| <span class="h-6 w-6"> | ||
| <span class="size-6"> | ||
| <SettingsIcon /> | ||
@@ -50,3 +50,3 @@ </span> | ||
| <button use:safeClick={{ callback: handleLogout }}> | ||
| <span class="h-6 w-6"> | ||
| <span class="size-6"> | ||
| <LogoutIcon /> | ||
@@ -53,0 +53,0 @@ </span> |
@@ -27,3 +27,3 @@ <script lang="ts"> | ||
| <label for="nav-drawer" class="btn btn-circle btn-ghost drawer-button"> | ||
| <span class="h-6 w-6"> | ||
| <span class="size-6"> | ||
| <SwappableIcon icon={MenuIcon} altIcon={CloseIcon} altIconActive={checked} rotate /> | ||
@@ -50,3 +50,3 @@ </span> | ||
| > | ||
| <span class="h-6 w-6"> | ||
| <span class="size-6"> | ||
| <SwappableIcon | ||
@@ -73,3 +73,3 @@ class={active && $darkTheme === false ? "fill-neutral-content" : ""} | ||
| <button class="btn btn-circle btn-ghost h-10 min-h-0 w-10" on:click={handleFullscreen}> | ||
| <span class="h-6 w-6"> | ||
| <span class="size-6"> | ||
| <FullscreenIcon /> | ||
@@ -89,3 +89,3 @@ </span> | ||
| <summary | ||
| class="inline-flex h-8 w-8 cursor-pointer items-center justify-center rounded-full bg-accent text-sm font-bold text-accent-content" | ||
| class="inline-flex size-8 cursor-pointer items-center justify-center rounded-full bg-accent text-sm font-bold text-accent-content" | ||
| > | ||
@@ -99,3 +99,3 @@ {getNameInitials(name.first, name.last)} | ||
| <button | ||
| class="inline-flex h-8 w-8 items-center justify-center rounded-full bg-accent text-sm font-bold text-accent-content" | ||
| class="inline-flex size-8 items-center justify-center rounded-full bg-accent text-sm font-bold text-accent-content" | ||
| > | ||
@@ -102,0 +102,0 @@ {getNameInitials(name.first, name.last)} |
@@ -30,5 +30,5 @@ <script lang="ts"> | ||
| /> | ||
| <button class="absolute right-3 top-3 h-6 w-6" type="button" on:click={handleClick}> | ||
| <button class="absolute right-3 top-3 size-6" type="button" on:click={handleClick}> | ||
| <SwappableIcon icon={VisibilityOnIcon} altIcon={VisibilityOffIcon} altIconActive={visible} /> | ||
| </button> | ||
| </span> |
@@ -12,3 +12,3 @@ <script lang="ts"> | ||
| if (typeof url === "string") { | ||
| const { path, query, hash } = getUrlParts(url) | ||
| let { path, query, hash } = getUrlParts(url) | ||
| const params = new URLSearchParams(query) | ||
@@ -15,0 +15,0 @@ params.delete("iframe", "1") |
@@ -28,3 +28,3 @@ <script lang="ts"> | ||
| <button class="btn btn-circle btn-ghost h-10 min-h-0 w-10" on:click={handleSwitchTheme}> | ||
| <span class="h-6 w-6"> | ||
| <span class="size-6"> | ||
| <SwappableIcon icon={DarkModeIcon} altIcon={LightModeIcon} altIconActive={$darkTheme} rotate> | ||
@@ -38,3 +38,3 @@ <input class="theme-controller" type="checkbox" value="dark" /> | ||
| <details class="dropdown dropdown-end dropdown-bottom flex items-center"> | ||
| <summary class="h-6 w-6 cursor-pointer"> | ||
| <summary class="size-6 cursor-pointer"> | ||
| <ExpandIcon /> | ||
@@ -46,3 +46,3 @@ </summary> | ||
| <div class="dropdown dropdown-end dropdown-bottom flex items-center"> | ||
| <button class="h-6 w-6"> | ||
| <button class="size-6"> | ||
| <ExpandIcon /> | ||
@@ -49,0 +49,0 @@ </button> |
@@ -29,3 +29,3 @@ <script lang="ts"> | ||
| /> | ||
| <span class="pointer-events-none absolute left-3 top-3 hidden h-6 w-6 peer-checked:inline"> | ||
| <span class="pointer-events-none absolute left-3 top-3 hidden size-6 peer-checked:inline"> | ||
| <CheckIcon /> | ||
@@ -32,0 +32,0 @@ </span> |
Sorry, the diff of this file is too big to display
Alert delta unavailable
Currently unable to show alert delta for PyPI packages.
1437285
0.08%297
0.68%