diff --git a/app/(pages)/settings/_components/settings-shell.tsx b/app/(pages)/settings/_components/settings-shell.tsx index 3e95e0c..75557ec 100644 --- a/app/(pages)/settings/_components/settings-shell.tsx +++ b/app/(pages)/settings/_components/settings-shell.tsx @@ -13,7 +13,13 @@ const sectionVariants = { }, }; -export function SettingsShell({ children }: { children: ReactNode }) { +export function SettingsShell({ + children, + footer, +}: { + children: ReactNode; + footer?: ReactNode; +}) { return ( ( {child} ))} + + {footer && {footer}} ); } diff --git a/app/(pages)/settings/page.tsx b/app/(pages)/settings/page.tsx index eee888b..ea79e97 100644 --- a/app/(pages)/settings/page.tsx +++ b/app/(pages)/settings/page.tsx @@ -5,6 +5,7 @@ import { auth } from "@/lib/auth/server"; import { db } from "@/lib/db/client"; import { webhookConnections, webhookEventLog } from "@/lib/db/schema"; import { getSetting } from "@/lib/services/settings"; +import { APP_VERSION, GIT_COMMIT } from "@/lib/version"; import { AccountSection } from "./_components/account-section"; import { IntegrationsSection } from "./_components/integrations-section"; import { ServerSection } from "./_components/server-section"; @@ -58,8 +59,41 @@ export default async function SettingsPage() { : Promise.resolve(false), ]); + const repoUrl = "https://github.com/jakejarvis/sofa"; + return ( - + +

+ + Sofa + {" "} + v{APP_VERSION} + {GIT_COMMIT !== "unknown" && ( + <> + {" "} + ( + + {GIT_COMMIT} + + ) + + )} +

+ + } + > { + try { + return execSync("git rev-parse --short HEAD", { + encoding: "utf-8", + }).trim(); + } catch { + return "unknown"; + } +})(); + const imageBaseUrl = process.env.TMDB_IMAGE_BASE_URL || ""; const imageHost = imageBaseUrl ? new URL(imageBaseUrl).hostname