diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..754e113
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+SOURCES/servlet-api-5.0.0.tar.gz
diff --git a/.jakarta-servlet.metadata b/.jakarta-servlet.metadata
new file mode 100644
index 0000000..14dbc5c
--- /dev/null
+++ b/.jakarta-servlet.metadata
@@ -0,0 +1 @@
+1326cf8e9252c36acfb0b9c7f7578d720c9bea82 SOURCES/servlet-api-5.0.0.tar.gz
diff --git a/SPECS/jakarta-servlet.spec b/SPECS/jakarta-servlet.spec
new file mode 100644
index 0000000..f17f320
--- /dev/null
+++ b/SPECS/jakarta-servlet.spec
@@ -0,0 +1,108 @@
+%bcond_with bootstrap
+
+Name: jakarta-servlet
+Version: 5.0.0
+Release: 10%{?dist}
+Summary: Server-side API for handling HTTP requests and responses
+# most of the project is EPL-2.0 or GPLv2 w/exceptions,
+# but some files still have Apache-2.0 license headers:
+# https://github.com/eclipse-ee4j/servlet-api/issues/347
+License: (EPL-2.0 or GPLv2 with exceptions) and ASL 2.0
+URL: https://github.com/eclipse-ee4j/servlet-api
+BuildArch: noarch
+
+Source0: https://github.com/eclipse-ee4j/servlet-api/archive/%{version}-RELEASE/servlet-api-%{version}.tar.gz
+
+BuildRequires: maven-local
+%if %{with bootstrap}
+BuildRequires: javapackages-bootstrap
+%else
+BuildRequires: mvn(org.apache.felix:maven-bundle-plugin)
+BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin)
+%endif
+
+Provides: glassfish-servlet-api = %{version}-%{release}
+
+%description
+Jakarta Servlet defines a server-side API for handling HTTP requests
+and responses.
+
+%{?javadoc_package}
+
+%prep
+%setup -q -n servlet-api-%{version}-RELEASE
+
+# remove unnecessary dependency on parent POM
+%pom_remove_parent . api
+
+# do not build specification documentation
+%pom_disable_module spec
+
+# Copy to old package name
+# TODO: Remove when all dependencies are migrated from javax.servlet to jakarta.servlet
+cp -pr api/src/main/java/jakarta api/src/main/java/javax
+sed -i -e 's/jakarta\./javax./g' $(find api/src/main/java/javax -name *.java)
+%pom_xpath_replace pom:instructions/pom:Export-Package \
+ 'jakarta.servlet.*,javax.servlet.*;version="4.0.0"' api
+
+# do not install useless parent POM
+%mvn_package jakarta.servlet:servlet-parent __noinstall
+
+# remove unnecessary maven plugins
+%pom_remove_plugin -r :formatter-maven-plugin
+%pom_remove_plugin -r :impsort-maven-plugin
+%pom_remove_plugin -r :maven-enforcer-plugin
+%pom_remove_plugin -r :maven-javadoc-plugin
+%pom_remove_plugin -r :maven-source-plugin
+
+# add maven artifact coordinate aliases for backwards compatibility
+%mvn_alias jakarta.servlet:jakarta.servlet-api \
+ javax.servlet:javax.servlet-api \
+ javax.servlet:servlet-api
+
+# add compat symlink for packages constructing the classpath manually
+%mvn_file :{*} %{name}/@1 glassfish-servlet-api
+
+%build
+%mvn_build
+
+%install
+%mvn_install
+
+%files -f .mfiles
+%license LICENSE.md NOTICE.md
+%doc README.md
+
+%changelog
+* Mon Aug 09 2021 Mohan Boddu - 5.0.0-10
+- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
+ Related: rhbz#1991688
+
+* Wed Jun 09 2021 Mikolaj Izdebski - 5.0.0-9
+- Rebuild to workaround DistroBaker issue
+
+* Tue Jun 08 2021 Mikolaj Izdebski - 5.0.0-8
+- Bootstrap Maven for CentOS Stream 9
+
+* Wed May 26 2021 Mikolaj Izdebski - 5.0.0-7
+- Re-add provides on glassfish-servlet-api
+
+* Mon May 17 2021 Mikolaj Izdebski - 5.0.0-6
+- Bootstrap build
+- Non-bootstrap build
+
+* Tue Jan 26 2021 Fedora Release Engineering - 5.0.0-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
+
+* Thu Aug 20 2020 Mat Booth - 5.0.0-4
+- Correct mvn_file macro invokation
+
+* Wed Aug 19 2020 Fabio Valentini - 5.0.0-3
+- Add compat symlink for packages constructing the classpath manually.
+
+* Wed Aug 19 2020 Mat Booth - 5.0.0-2
+- Also ship the API in the old javax namespace to aid transition
+
+* Thu Aug 13 2020 Fabio Valentini - 5.0.0-1
+- Initial package renamed from glassfish-servlet-api.
+