Bill Nottingham b5779fa
%define release_name Rawhide
f098b3f
%define dist_version 30
e92a79d
%define bug_version rawhide
cd00143
9dd491c
# Changes should be submitted as pull requests under
9dd491c
#     https://src.fedoraproject.org/rpms/fedora-release
9dd491c
#
9dd491c
# The package can only be built by a very small number of people
9dd491c
# if you are not sure you can build it do not attempt to
c4ef43c
3c12aac
Summary:        Fedora release files
3c12aac
Name:           fedora-release
f098b3f
Version:        30
f098b3f
Release:        0.1
cfe9724
License:        MIT
9880dcd
URL:            https://fedoraproject.org/
f875328
12e9116
Source1:        LICENSE
12e9116
Source2:        Fedora-Legal-README.txt
12e9116
Source3:        convert-to-edition
12e9116
Source4:        convert-to-edition.lua
12e9116
12e9116
Source10:       85-display-manager.preset
12e9116
Source11:       90-default.preset
12e9116
Source12:       90-default-user.preset
12e9116
Source13:       99-default-disable.preset
12e9116
Source14:       80-server.preset
12e9116
Source15:       80-workstation.preset
12e9116
Source16:       org.gnome.shell.gschema.override
12e9116
Source17:       org.projectatomic.rpmostree1.rules
12e9116
3c12aac
Obsoletes:      redhat-release
3c12aac
Provides:       redhat-release
beaa85a
Provides:       system-release
beaa85a
Provides:       system-release(%{version})
e7229b9
e32ddb6
Requires:       fedora-repos(%{version})
3c12aac
BuildArch:      noarch
1184e5b
1184e5b
%description
9dd491c
Fedora release files such as various /etc/ files that define the release
9dd491c
and systemd preset files that determine which services are enabled by default.
9dd491c
# See https://fedoraproject.org/wiki/Packaging:DefaultServices for details.
1184e5b
70f9218
%package atomichost
70f9218
Summary:        Base package for Fedora Atomic-specific default configurations
70f9218
Provides:       system-release-atomichost
70f9218
Provides:       system-release-atomichost(%{version})
70f9218
Provides:       system-release-product
70f9218
Requires:       fedora-release = %{version}-%{release}
70f9218
70f9218
%description atomichost
70f9218
Provides a base package for Fedora Atomic Host-specific configuration files to
70f9218
depend on.
70f9218
e32ddb6
%package cloud
e32ddb6
Summary:        Base package for Fedora Cloud-specific default configurations
e32ddb6
Provides:       system-release-cloud
e32ddb6
Provides:       system-release-cloud(%{version})
b34eee1
Provides:       system-release-product
e32ddb6
Requires:       fedora-release = %{version}-%{release}
e32ddb6
e32ddb6
%description cloud
e32ddb6
Provides a base package for Fedora Cloud-specific configuration files to
e32ddb6
depend on.
e32ddb6
e32ddb6
%package server
e32ddb6
Summary:        Base package for Fedora Server-specific default configurations
e32ddb6
Provides:       system-release-server
e32ddb6
Provides:       system-release-server(%{version})
b34eee1
Provides:       system-release-product
e32ddb6
Requires:       fedora-release = %{version}-%{release}
5d8c374
Requires:       systemd
70f9218
Requires:       cockpit-bridge
70f9218
Requires:       cockpit-networkmanager
70f9218
Requires:       cockpit-shell
70f9218
Requires:       cockpit-storaged
70f9218
Requires:       cockpit-ws
70f9218
Requires:       openssh-server
Mohan Boddu e381630
e0d1fd9
Requires(post):	systemd
e32ddb6
e32ddb6
%description server
e32ddb6
Provides a base package for Fedora Server-specific configuration files to
e32ddb6
depend on.
e32ddb6
e32ddb6
%package workstation
e32ddb6
Summary:        Base package for Fedora Workstation-specific default configurations
e32ddb6
Provides:       system-release-workstation
e32ddb6
Provides:       system-release-workstation(%{version})
b34eee1
Provides:       system-release-product
e32ddb6
Requires:       fedora-release = %{version}-%{release}
8e95b90
# needed for captive portal support
8e95b90
Requires:       NetworkManager-config-connectivity-fedora
4ca6c96
Requires(post): /usr/bin/glib-compile-schemas
4ca6c96
Requires(postun): /usr/bin/glib-compile-schemas
3191855
e32ddb6
%description workstation
e32ddb6
Provides a base package for Fedora Workstation-specific configuration files to
e32ddb6
depend on.
3191855
e705caf
%package -n convert-to-edition
e705caf
Summary: Script for converting between Fedora Editions
0c17331
Requires: fedora-release = %{version}-%{release}
e705caf
e705caf
%description -n convert-to-edition
e705caf
Provides a script to convert the running system between Fedora Editions
e705caf
1184e5b
%prep
12e9116
sed -i 's|@@VERSION@@|%{dist_version}|g' %{SOURCE2}
1184e5b
1184e5b
%build
1184e5b
1184e5b
%install
c06dde8
install -d %{buildroot}/etc
c06dde8
echo "Fedora release %{version} (%{release_name})" > %{buildroot}/etc/fedora-release
c06dde8
echo "cpe:/o:fedoraproject:fedora:%{version}" > %{buildroot}/etc/system-release-cpe
294e788
294e788
# Symlink the -release files
c06dde8
ln -s fedora-release %{buildroot}/etc/redhat-release
c06dde8
ln -s fedora-release %{buildroot}/etc/system-release
1184e5b
e7229b9
# Create the common os-release file
c06dde8
install -d %{buildroot}/usr/lib/os.release.d/
c06dde8
cat << EOF >>%{buildroot}/usr/lib/os.release.d/os-release-fedora
c6a5416
NAME=Fedora
031a744
VERSION="%{dist_version} (%{release_name})"
c6a5416
ID=fedora
031a744
VERSION_ID=%{dist_version}
Mohan Boddu 625fffd
PLATFORM_ID="platform:f%{dist_version}"
031a744
PRETTY_NAME="Fedora %{dist_version} (%{release_name})"
d805ab1
ANSI_COLOR="0;34"
031a744
CPE_NAME="cpe:/o:fedoraproject:fedora:%{dist_version}"
3c12aac
HOME_URL="https://fedoraproject.org/"
Mohan Boddu ffa1145
SUPPORT_URL="https://fedoraproject.org/wiki/Communicating_and_getting_help"
3c12aac
BUG_REPORT_URL="https://bugzilla.redhat.com/"
031a744
REDHAT_BUGZILLA_PRODUCT="Fedora"
031a744
REDHAT_BUGZILLA_PRODUCT_VERSION=%{bug_version}
3f287c7
REDHAT_SUPPORT_PRODUCT="Fedora"
031a744
REDHAT_SUPPORT_PRODUCT_VERSION=%{bug_version}
Mohan Boddu ffa1145
PRIVACY_POLICY_URL="https://fedoraproject.org/wiki/Legal:PrivacyPolicy"
c6a5416
EOF
c6a5416
294e788
# Create the common /etc/issue
c06dde8
echo "\S" > %{buildroot}/usr/lib/os.release.d/issue-fedora
c06dde8
echo "Kernel \r on an \m (\l)" >> %{buildroot}/usr/lib/os.release.d/issue-fedora
c06dde8
echo >> %{buildroot}/usr/lib/os.release.d/issue-fedora
294e788
294e788
# Create /etc/issue.net
c06dde8
echo "\S" > %{buildroot}/usr/lib/issue.net
c06dde8
echo "Kernel \r on an \m (\l)" >> %{buildroot}/usr/lib/issue.net
c06dde8
ln -s ../usr/lib/issue.net %{buildroot}/etc/issue.net
294e788
294e788
# Create os-release and issue files for the different editions
70f9218
70f9218
# Atomic Host - https://bugzilla.redhat.com/show_bug.cgi?id=1200122
c06dde8
cp -p %{buildroot}/usr/lib/os.release.d/os-release-fedora \
c06dde8
      %{buildroot}/usr/lib/os.release.d/os-release-atomichost
c06dde8
echo "VARIANT=\"Atomic Host\"" >> %{buildroot}/usr/lib/os.release.d/os-release-atomichost
c06dde8
echo "VARIANT_ID=atomic.host" >> %{buildroot}/usr/lib/os.release.d/os-release-atomichost
c06dde8
sed -i -e "s|(%{release_name})|(Atomic Host)|g" %{buildroot}/usr/lib/os.release.d/os-release-atomichost
70f9218
e7229b9
# Cloud
c06dde8
cp -p %{buildroot}/usr/lib/os.release.d/os-release-fedora \
c06dde8
      %{buildroot}/usr/lib/os.release.d/os-release-cloud
c06dde8
echo "VARIANT=\"Cloud Edition\"" >> %{buildroot}/usr/lib/os.release.d/os-release-cloud
c06dde8
echo "VARIANT_ID=cloud" >> %{buildroot}/usr/lib/os.release.d/os-release-cloud
c06dde8
sed -i -e "s|(%{release_name})|(Cloud Edition)|g" %{buildroot}/usr/lib/os.release.d/os-release-cloud
e7229b9
e7229b9
# Server
c06dde8
cp -p %{buildroot}/usr/lib/os.release.d/os-release-fedora \
c06dde8
      %{buildroot}/usr/lib/os.release.d/os-release-server
c06dde8
echo "VARIANT=\"Server Edition\"" >> %{buildroot}/usr/lib/os.release.d/os-release-server
c06dde8
echo "VARIANT_ID=server" >> %{buildroot}/usr/lib/os.release.d/os-release-server
c06dde8
sed -i -e "s|(%{release_name})|(Server Edition)|g" %{buildroot}/usr/lib/os.release.d/os-release-server
e7229b9
c06dde8
cp -p %{buildroot}/usr/lib/os.release.d/issue-fedora \
c06dde8
      %{buildroot}/usr/lib/os.release.d/issue-server
c06dde8
echo "Admin Console: https://\4:9090/ or https://[\6]:9090/" >> %{buildroot}/usr/lib/os.release.d/issue-server
c06dde8
echo >> %{buildroot}/usr/lib/os.release.d/issue-server
294e788
e7229b9
# Workstation
c06dde8
cp -p %{buildroot}/usr/lib/os.release.d/os-release-fedora \
c06dde8
      %{buildroot}/usr/lib/os.release.d/os-release-workstation
c06dde8
echo "VARIANT=\"Workstation Edition\"" >> %{buildroot}/usr/lib/os.release.d/os-release-workstation
c06dde8
echo "VARIANT_ID=workstation" >> %{buildroot}/usr/lib/os.release.d/os-release-workstation
c06dde8
sed -i -e "s|(%{release_name})|(Workstation Edition)|g" %{buildroot}/usr/lib/os.release.d/os-release-workstation
e7229b9
e7229b9
# Create the symlink for /etc/os-release
a3d90d6
# We don't create the /usr/lib/os-release symlink until %%post
a3d90d6
# so that we can ensure that the right one is referenced.
c06dde8
ln -s ../usr/lib/os-release %{buildroot}/etc/os-release
818a66c
294e788
# Create the symlink for /etc/issue
a3d90d6
# We don't create the /usr/lib/os-release symlink until %%post
a3d90d6
# so that we can ensure that the right one is referenced.
c06dde8
ln -s ../usr/lib/issue %{buildroot}/etc/issue
294e788
d77301f
# Set up the dist tag macros
c06dde8
install -d -m 755 %{buildroot}%{_rpmconfigdir}/macros.d
c06dde8
cat >> %{buildroot}%{_rpmconfigdir}/macros.d/macros.dist << EOF
d77301f
# dist macros.
d77301f
3c12aac
%%fedora                %{dist_version}
567eaa2
%%dist                %{?distprefix}.fc%{dist_version}
3c12aac
%%fc%{dist_version}                1
d77301f
EOF
d77301f
12e9116
# Install licenses
c06dde8
install -d %{buildroot}%{_datadir}/licenses/%{name}/
c06dde8
install -pm 0644 %{SOURCE1} %{buildroot}%{_datadir}/licenses/%{name}/LICENSE
c06dde8
install -pm 0644 %{SOURCE2} %{buildroot}%{_datadir}/licenses/%{name}/Fedora-Legal-README.txt
12e9116
e10a87b
# Default system wide
c06dde8
install -Dm0644 %{SOURCE10} -t %{buildroot}%{_prefix}/lib/systemd/system-preset/
c06dde8
install -Dm0644 %{SOURCE11} -t %{buildroot}%{_prefix}/lib/systemd/system-preset/
c06dde8
install -Dm0644 %{SOURCE12} -t %{buildroot}/usr/lib/systemd/user-preset/
c06dde8
install -Dm0644 %{SOURCE13} -t %{buildroot}%{_prefix}/lib/systemd/system-preset/
32c73d2
5d8c374
# Fedora Server
c06dde8
install -Dm0644 %{SOURCE14} -t %{buildroot}%{_prefix}/lib/os.release.d/presets/
e7229b9
# Fedora Workstation
c06dde8
install -Dm0644 %{SOURCE15} -t %{buildroot}%{_prefix}/lib/os.release.d/presets/
5d8c374
4ca6c96
# Override the list of enabled gnome-shell extensions for Workstation
c06dde8
install -Dm0644 %{SOURCE16} -t %{buildroot}%{_datadir}/glib-2.0/schemas/
c06dde8
install -Dm0644 %{SOURCE17} -t %{buildroot}%{_datadir}/polkit-1/rules.d/
4ca6c96
a3d90d6
# Copy the make_edition script to /usr/sbin
c06dde8
install -Dm0755 %{SOURCE3} -t %{buildroot}/%{_prefix}/sbin/
a3d90d6
70f9218
%post -p <lua>
12e9116
%include %{SOURCE4}
70f9218
-- On initial installation, we'll at least temporarily put the non-product
70f9218
-- symlinks in place. It will be overridden by fedora-release-$EDITION
70f9218
-- %%post sections because we don't write the /usr/lib/variant file until
70f9218
-- %%posttrans to avoid trumping the fedora-release-$EDITION packages.
70f9218
-- This is necessary to avoid breaking systemctl scripts since they rely on
70f9218
-- /usr/lib/os-release being valid. We can't wait until %%posttrans to default
70f9218
-- to os-release-fedora.
70f9218
if arg[2] == "0" then
70f9218
    set_release(fedora)
70f9218
    set_issue(fedora)
70f9218
end
70f9218
70f9218
-- We also want to forcibly set these paths on upgrade if we are explicitly
70f9218
-- set to "nonproduct"
70f9218
if read_variant() == "nonproduct" then
70f9218
    convert_to_edition("nonproduct", false)
70f9218
end
70f9218
70f9218
%posttrans -p <lua>
12e9116
%include %{SOURCE4}
70f9218
-- If we get to %%posttrans and nothing created /usr/lib/variant, set it to
70f9218
-- nonproduct.
c974f93
install_edition("nonproduct")
70f9218
70f9218
%post atomichost -p <lua>
12e9116
%include %{SOURCE4}
70f9218
install_edition("atomichost")
70f9218
70f9218
%preun atomichost -p <lua>
12e9116
%include %{SOURCE4}
70f9218
uninstall_edition("atomichost")
70f9218
70f9218
%post cloud -p <lua>
12e9116
%include %{SOURCE4}
70f9218
install_edition("cloud")
70f9218
70f9218
%preun cloud -p <lua>
12e9116
%include %{SOURCE4}
70f9218
uninstall_edition("cloud")
70f9218
70f9218
%post server -p <lua>
12e9116
%include %{SOURCE4}
70f9218
install_edition("server")
70f9218
70f9218
%preun server -p <lua>
12e9116
%include %{SOURCE4}
70f9218
uninstall_edition("server")
70f9218
70f9218
%post workstation -p <lua>
12e9116
%include %{SOURCE4}
70f9218
install_edition("workstation")
70f9218
70f9218
%preun workstation -p <lua>
12e9116
%include %{SOURCE4}
70f9218
uninstall_edition("workstation")
e7229b9
4ca6c96
%postun workstation
4ca6c96
if [ $1 -eq 0 ] ; then
4ca6c96
    glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
4ca6c96
fi
4ca6c96
4ca6c96
%posttrans workstation
4ca6c96
glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
4ca6c96
1184e5b
1184e5b
%files
cf296ee
%license LICENSE Fedora-Legal-README.txt
a3d90d6
%ghost /usr/lib/variant
e7229b9
%dir /usr/lib/os.release.d
a3d90d6
%dir /usr/lib/os.release.d/presets
567eaa2
%attr(0644,root,root) /usr/lib/os.release.d/os-release-fedora
a3d90d6
%ghost /usr/lib/os-release
a85fc88
/etc/os-release
d397f93
%config %attr(0644,root,root) /etc/fedora-release
1184e5b
/etc/redhat-release
e3ebaa6
/etc/system-release
f13ec77
%config %attr(0644,root,root) /etc/system-release-cpe
567eaa2
%attr(0644,root,root) /usr/lib/os.release.d/issue-fedora
a3d90d6
%ghost /usr/lib/issue
e92a79d
%config(noreplace) /etc/issue
567eaa2
%attr(0644,root,root) /usr/lib/issue.net
e92a79d
%config(noreplace) /etc/issue.net
b1e9816
%attr(0644,root,root) %{_rpmconfigdir}/macros.d/macros.dist
f4f346f
%dir /usr/lib/systemd/user-preset/
58e4ecf
%{_prefix}/lib/systemd/user-preset/90-default-user.preset
1837993
%dir %{_prefix}/lib/systemd/system-preset/
e10a87b
%{_prefix}/lib/systemd/system-preset/85-display-manager.preset
e10a87b
%{_prefix}/lib/systemd/system-preset/90-default.preset
e10a87b
%{_prefix}/lib/systemd/system-preset/99-default-disable.preset
d5fe401
70f9218
70f9218
%files atomichost
567eaa2
%attr(0644,root,root) /usr/lib/os.release.d/os-release-atomichost
70f9218
70f9218
e32ddb6
%files cloud
567eaa2
%attr(0644,root,root) /usr/lib/os.release.d/os-release-cloud
e7229b9
e32ddb6
e32ddb6
%files server
567eaa2
%attr(0644,root,root) /usr/lib/os.release.d/os-release-server
567eaa2
%attr(0644,root,root) /usr/lib/os.release.d/issue-server
a3d90d6
%ghost %{_prefix}/lib/systemd/system-preset/80-server.preset
567eaa2
%attr(0644,root,root) /usr/lib/os.release.d/presets/80-server.preset
e32ddb6
e32ddb6
%files workstation
567eaa2
%attr(0644,root,root) /usr/lib/os.release.d/os-release-workstation
4ca6c96
%{_datadir}/glib-2.0/schemas/org.gnome.shell.gschema.override
a3d90d6
%ghost %{_prefix}/lib/systemd/system-preset/80-workstation.preset
567eaa2
%attr(0644,root,root) /usr/lib/os.release.d/presets/80-workstation.preset
Mohan Boddu 06189b1
%attr(0644,root,root) /usr/share/polkit-1/rules.d/org.projectatomic.rpmostree1.rules
3191855
e705caf
%files -n convert-to-edition
e705caf
/usr/sbin/convert-to-edition
e705caf
d5fe401
%changelog
f098b3f
* Tue Aug 14 2018 Mohan Boddu <mboddu@bhujji.com> - 30-0.1
f098b3f
- Setup for rawhide being f30