diff --git a/.gitea/workflows/build-hydros-environment.yml b/.gitea/workflows/build-hydros-environment.yml
new file mode 100644
index 0000000..c1dd634
--- /dev/null
+++ b/.gitea/workflows/build-hydros-environment.yml
@@ -0,0 +1,33 @@
+name: Build hydros-environment
+on:
+ push:
+ branches:
+ - main
+ paths:
+ - .gitea/workflows/build-hydros-environment.yml
+ - "hydros-environment/**"
+ workflow_dispatch:
+
+jobs:
+ build_push:
+ name: Build and push image
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Setup environment
+ shell: bash
+ run: |
+ sudo apt-get update
+ sudo apt-get install -y podman iptables
+
+ # These stage versions are pinned by https://github.com/renovatebot/renovate
+ - name: Checkout
+ uses: actions/checkout@v6 # v5
+
+ - name: Build RPM and Upload
+ uses: https://git.hydrosaber.com/hydros/build-rpm@main
+ with:
+ spec-file-path: ./hydros-environment/hydros-environment.spec
+ repository-user: eriq12
+ repository-user-token: ${{ secrets.RPM_PACKAGE_TOKEN }}
+ extra-source-directory: ./hydros-environment/etc
diff --git a/hydros-environment/etc/environment.d/cursor.conf b/hydros-environment/etc/environment.d/cursor.conf
new file mode 100644
index 0000000..6365fbc
--- /dev/null
+++ b/hydros-environment/etc/environment.d/cursor.conf
@@ -0,0 +1,4 @@
+HYPRCURSOR_THEME=Nordzy-catppuccin-mocha-sapphire
+HYPRCURSOR_SIZE=36
+XCURSOR_THEME=Nordzy-catppuccin-mocha-sapphire
+XCURSOR_SIZE=36
diff --git a/hydros-environment/etc/environment.d/theme.conf b/hydros-environment/etc/environment.d/theme.conf
new file mode 100644
index 0000000..eccad4a
--- /dev/null
+++ b/hydros-environment/etc/environment.d/theme.conf
@@ -0,0 +1,2 @@
+QT_QPA_PLATFORMTHEME=hyprqt6engine
+QT_QUICK_CONTROLS_STYLE=org.hyprland.style
diff --git a/hydros-environment/etc/firewalld/services/grayjay.xml b/hydros-environment/etc/firewalld/services/grayjay.xml
new file mode 100644
index 0000000..901578d
--- /dev/null
+++ b/hydros-environment/etc/firewalld/services/grayjay.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/hydros-environment/etc/firewalld/services/localsend.xml b/hydros-environment/etc/firewalld/services/localsend.xml
new file mode 100644
index 0000000..0e56d9c
--- /dev/null
+++ b/hydros-environment/etc/firewalld/services/localsend.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/hydros-environment/etc/modules-load.d/asus-sensor.conf b/hydros-environment/etc/modules-load.d/asus-sensor.conf
new file mode 100644
index 0000000..6457235
--- /dev/null
+++ b/hydros-environment/etc/modules-load.d/asus-sensor.conf
@@ -0,0 +1 @@
+nct6775
diff --git a/hydros-environment/etc/modules-load.d/ntsync.conf b/hydros-environment/etc/modules-load.d/ntsync.conf
new file mode 100644
index 0000000..848573a
--- /dev/null
+++ b/hydros-environment/etc/modules-load.d/ntsync.conf
@@ -0,0 +1 @@
+ntsync
diff --git a/hydros-environment/etc/sddm/sddm-useradd b/hydros-environment/etc/sddm/sddm-useradd
new file mode 100644
index 0000000..e44f640
--- /dev/null
+++ b/hydros-environment/etc/sddm/sddm-useradd
@@ -0,0 +1,4 @@
+#!/usr/bin/sh
+
+getent group sddm > /dev/null || groupadd -r sddm
+getent passwd sddm > /dev/null || useradd -r -g sddm -c "SDDM Greeter Account" -d /var/lib/sddm -s /usr/sbin/nologin sddm
diff --git a/hydros-environment/etc/xdg/autostart/kitty.desktop b/hydros-environment/etc/xdg/autostart/kitty.desktop
new file mode 100644
index 0000000..3885177
--- /dev/null
+++ b/hydros-environment/etc/xdg/autostart/kitty.desktop
@@ -0,0 +1,16 @@
+[Desktop Entry]
+Version=1.0
+Type=Application
+Name=kitty
+GenericName=Terminal emulator
+Comment=Fast, feature-rich, GPU based terminal
+TryExec=kitty
+StartupNotify=true
+Exec=/usr/bin/hyprctl dispatch exec [workspace special:terminal silent] /usr/bin/kitty
+Icon=kitty
+Categories=System;TerminalEmulator;
+X-TerminalArgExec=--
+X-TerminalArgTitle=--title
+X-TerminalArgAppId=--class
+X-TerminalArgDir=--working-directory
+X-TerminalArgHold=--hold
\ No newline at end of file
diff --git a/hydros-environment/hydros-environment.spec b/hydros-environment/hydros-environment.spec
new file mode 100644
index 0000000..52003f2
--- /dev/null
+++ b/hydros-environment/hydros-environment.spec
@@ -0,0 +1,37 @@
+Name: hydros-environment
+Version: 0.0.1
+Release: %autorelease
+Summary: The bundle of configuration overrides other than containers for HydrOS
+BuildArch: noarch
+
+License: GPL
+Source0: source.tar.gz
+
+%description
+
+%prep
+%autosetup -C
+
+%install
+install -Dm0444 -t %{buildroot}%{_sysconfdir}/environment.d/ %{_builddir}/%{name}-%{version}/environment.d/cursor.conf
+install -Dm0444 -t %{buildroot}%{_sysconfdir}/environment.d/ %{_builddir}/%{name}-%{version}/environment.d/theme.conf
+install -Dm0444 -t %{buildroot}%{_sysconfdir}/firewald/services/ %{_builddir}/%{name}-%{version}/firewald/services/grayjay.xml
+install -Dm0444 -t %{buildroot}%{_sysconfdir}/firewald/services/ %{_builddir}/%{name}-%{version}/firewald/services/localsend.xml
+install -Dm0444 -t %{buildroot}%{_sysconfdir}/modules-load.d/ %{_builddir}/%{name}-%{version}/modules-load.d/asus-sensor.conf
+install -Dm0444 -t %{buildroot}%{_sysconfdir}/modules-load.d/ %{_builddir}/%{name}-%{version}/modules-load.d/ntsync.conf
+install -Dm0644 -t %{buildroot}%{_sysconfdir}/sddm/ %{_builddir}/%{name}-%{version}/sddm/sddm-useradd
+install -Dm0644 -t %{buildroot}%{_sysconfdir}/xdg/autostart/ %{_builddir}/%{name}-%{version}/xdg/autostart/kitty.desktop
+
+%files
+%{_sysconfdir}/environment.d/cursor.conf
+%{_sysconfdir}/environment.d/theme.conf
+%{_sysconfdir}/firewald/services/grayjay.xml
+%{_sysconfdir}/firewald/services/localsend.xml
+%{_sysconfdir}/modules-load.d/asus-sensor.conf
+%{_sysconfdir}/modules-load.d/ntsync.conf
+%{_sysconfdir}/sddm/sddm-useradd
+%{_sysconfdir}/xdg/autostart/kitty.desktop
+
+%changelog
+* Mon Mar 30 2026 Eriq Taing
+- First version packaged