fedora-release-server-25-2$>FvOCjSƼڀV P>;:v?:fd  \ )JPW1++( +4 +@ +X ,^ ,d,|,,,,-h-.(/8/ 9/L:2#>6?6G6H7I7(X70Y7D\7T]7l^7b8ad9ce9hf9kl9mt9u9v9:\:`Cfedora-release-server252Base package for Fedora Server-specific default configurationsProvides a base package for Fedora Server-specific configuration files to depend on.Ybuildvm-16.phx2.fedoraproject.orgYFedora ProjectFedora ProjectMITFedora ProjectSystem Environment/Basehttps://pagure.io/fedora-releaselinuxnoarch-- This is intended to be run as an RPM scriptlet. -- Keep this file in sync with the convert-to-edition -- shell script local VARIANT_FILE = "/usr/lib/variant" -- Read in /usr/lib/variant and determine the edition local function read_variant() local variant local f = io.open(VARIANT_FILE, "r") if f ~= nil then while true do local line = f:read() if line == nil then break end local m = line:match("^VARIANT_ID=([^\n]+)") if m ~= nil then variant = m end end f:close() end return variant end -- Atomically replace a file with new contents local function writefile(path, data) local tmp = path .. ".convert-to-edition" local f = io.open(tmp, "w+") if f == nil then return end f:write(data) f:close() if not os.rename(tmp, path) then os.remove(tmp) end end -- Forcibly replace a symlink local function symlink(from, to) os.remove(to) assert(posix.symlink(from, to)) end -- Run a subroutine in a child process local function execute(...) local pid = posix.fork() if pid == 0 then posix.exec(...) posix.exit(1) elseif pid ~= -1 then local status = posix.wait(pid) if status ~= 0 then local program = ... error(program .. " exited with status " .. status) end end end -- Remove preset files for other editions -- This should never be necessary, but it's best to be safe local function clear_presets() local path = "/usr/lib/systemd/system-preset" for file in posix.files(path) do if file:match("^80.*%.preset$") then os.remove(path .. "/" .. file) end end end -- Get a list of presets that need to be enabled or disabled -- as part of the installation of this edition local function read_presets(path) local result = {} local f = assert(io.open(path)) if f ~= nil then while true do local line = f:read() if line == nil then break end local cmd, arg = line:match("^([^ \t]+)[ \t]+([^\n \t]+)") if cmd == "enable" or cmd == "disable" then result[#result + 1] = arg end end f:close() end return result end local function set_variant(variant) writefile(VARIANT_FILE, "VARIANT_ID=" .. variant .. "\n") end local function set_release(release) symlink("./os.release.d/os-release-" .. release, "/usr/lib/os-release") end local function set_issue(release) symlink("./os.release.d/issue-" .. release, "/usr/lib/issue") end -- release: the VARIANT_ID for os-release -- issue: which /etc/issue file to install -- presets: whether this edition has extra presets beyond the -- defaults to enable or disable local variants = { atomichost = {release = "atomichost", issue = "fedora", presets = false}, cloud = {release = "cloud", issue = "fedora", presets = false}, nonproduct = {release = "fedora", issue = "fedora", presets = false}, server = {release = "server", issue = "server", presets = true}, workstation = {release = "workstation", issue = "fedora", presets = true}, } -- Call out to systemctl to enable or disable presets local function set_presets(edition, apply_presets) if variants[edition].presets then local target = "/usr/lib/systemd/system-preset/80-" .. edition .. ".preset" symlink("../../os.release.d/presets/80-" .. edition .. ".preset", target) if apply_presets then local presets = read_presets(target) local systemctl = "/usr/bin/systemctl" if posix.access(systemctl, "x") then --fork off a systemctl call local pid = assert(posix.fork()) if pid == 0 then -- Child posix.exec(systemctl, "preset", "-q", table.unpack(presets)) -- In case exec() fails os.exit(17) else -- RPM assert(posix.wait(pid)) end end end end end local function convert_to_edition(edition, apply_presets) local variant = variants[edition] if variant == nil then error("undefined edition: " .. edition) end set_release(variant.release) set_issue(variant.issue) clear_presets() set_presets(edition, apply_presets) end local function install_edition(edition) -- Create the variant file if it does not already exist. This needs -- to be done on both installation and upgrade, to ensure that we -- upgrade from F23 and earlier properly. if not posix.access(VARIANT_FILE, "f") then set_variant(edition) end if read_variant() == edition then -- (On initial installation only), fix up after %systemd_post -- in packages possibly installed before our preset file was -- added -- On upgrades, do not enable or disable presets to avoid -- surprising the user local initial_install = arg[2] == 1 convert_to_edition(edition, initial_install) end end local function uninstall_edition(edition) -- If we are uninstalling, we need to reset the variant file and -- force the os-release file back to os-release-fedora. We do this -- in %preun so that we don't have any time where the os-release -- symlink is dangling (since in %postun, the os-release-$EDITION -- file will have already been removed) if arg[2] == 0 then if read_variant() == edition then set_variant("nonproduct") convert_to_edition("nonproduct", false) end end end install_edition("server")-- This is intended to be run as an RPM scriptlet. -- Keep this file in sync with the convert-to-edition -- shell script local VARIANT_FILE = "/usr/lib/variant" -- Read in /usr/lib/variant and determine the edition local function read_variant() local variant local f = io.open(VARIANT_FILE, "r") if f ~= nil then while true do local line = f:read() if line == nil then break end local m = line:match("^VARIANT_ID=([^\n]+)") if m ~= nil then variant = m end end f:close() end return variant end -- Atomically replace a file with new contents local function writefile(path, data) local tmp = path .. ".convert-to-edition" local f = io.open(tmp, "w+") if f == nil then return end f:write(data) f:close() if not os.rename(tmp, path) then os.remove(tmp) end end -- Forcibly replace a symlink local function symlink(from, to) os.remove(to) assert(posix.symlink(from, to)) end -- Run a subroutine in a child process local function execute(...) local pid = posix.fork() if pid == 0 then posix.exec(...) posix.exit(1) elseif pid ~= -1 then local status = posix.wait(pid) if status ~= 0 then local program = ... error(program .. " exited with status " .. status) end end end -- Remove preset files for other editions -- This should never be necessary, but it's best to be safe local function clear_presets() local path = "/usr/lib/systemd/system-preset" for file in posix.files(path) do if file:match("^80.*%.preset$") then os.remove(path .. "/" .. file) end end end -- Get a list of presets that need to be enabled or disabled -- as part of the installation of this edition local function read_presets(path) local result = {} local f = assert(io.open(path)) if f ~= nil then while true do local line = f:read() if line == nil then break end local cmd, arg = line:match("^([^ \t]+)[ \t]+([^\n \t]+)") if cmd == "enable" or cmd == "disable" then result[#result + 1] = arg end end f:close() end return result end local function set_variant(variant) writefile(VARIANT_FILE, "VARIANT_ID=" .. variant .. "\n") end local function set_release(release) symlink("./os.release.d/os-release-" .. release, "/usr/lib/os-release") end local function set_issue(release) symlink("./os.release.d/issue-" .. release, "/usr/lib/issue") end -- release: the VARIANT_ID for os-release -- issue: which /etc/issue file to install -- presets: whether this edition has extra presets beyond the -- defaults to enable or disable local variants = { atomichost = {release = "atomichost", issue = "fedora", presets = false}, cloud = {release = "cloud", issue = "fedora", presets = false}, nonproduct = {release = "fedora", issue = "fedora", presets = false}, server = {release = "server", issue = "server", presets = true}, workstation = {release = "workstation", issue = "fedora", presets = true}, } -- Call out to systemctl to enable or disable presets local function set_presets(edition, apply_presets) if variants[edition].presets then local target = "/usr/lib/systemd/system-preset/80-" .. edition .. ".preset" symlink("../../os.release.d/presets/80-" .. edition .. ".preset", target) if apply_presets then local presets = read_presets(target) local systemctl = "/usr/bin/systemctl" if posix.access(systemctl, "x") then --fork off a systemctl call local pid = assert(posix.fork()) if pid == 0 then -- Child posix.exec(systemctl, "preset", "-q", table.unpack(presets)) -- In case exec() fails os.exit(17) else -- RPM assert(posix.wait(pid)) end end end end end local function convert_to_edition(edition, apply_presets) local variant = variants[edition] if variant == nil then error("undefined edition: " .. edition) end set_release(variant.release) set_issue(variant.issue) clear_presets() set_presets(edition, apply_presets) end local function install_edition(edition) -- Create the variant file if it does not already exist. This needs -- to be done on both installation and upgrade, to ensure that we -- upgrade from F23 and earlier properly. if not posix.access(VARIANT_FILE, "f") then set_variant(edition) end if read_variant() == edition then -- (On initial installation only), fix up after %systemd_post -- in packages possibly installed before our preset file was -- added -- On upgrades, do not enable or disable presets to avoid -- surprising the user local initial_install = arg[2] == 1 convert_to_edition(edition, initial_install) end end local function uninstall_edition(edition) -- If we are uninstalling, we need to reset the variant file and -- force the os-release file back to os-release-fedora. We do this -- in %preun so that we don't have any time where the os-release -- symlink is dangling (since in %postun, the os-release-$EDITION -- file will have already been removed) if arg[2] == 0 then if read_variant() == edition then set_variant("nonproduct") convert_to_edition("nonproduct", false) end end end uninstall_edition("server")S>'A큤YYYYYYc688d0d2d62ef2a7387cf65a4acaf04ac215e5dc02cf8e6f9bdf89306b0935a57b6ad525d6435f11750bd36d4d10f914d7e783a8f1a0caebb4a504bd895dad1cc7e0766a598fc83ef9c7512c1641e51ce238745f0448d3cf90781a1d77a09d6fe98708047560db5a5bcf7495c3108709760cbf6202df7b216cbd7918725e7d0f@rootrootrootrootrootrootrootrootrootrootrootrootfedora-release-25-2.src.rpmconfig(fedora-release-server)fedora-release-serversystem-release-productsystem-release-serversystem-release-server(25)     cockpit-bridgecockpit-networkmanagercockpit-shellcockpit-storagedcockpit-wsconfig(fedora-release-server)fedora-releaseopenssh-serverrolekitrpmlib(BuiltinLuaScripts)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)systemdsystemd25-225-24.2.2-13.0.4-14.6.0-14.0-15.2-14.13.0.1Y;@X@X2@X2@X=W Wm W=WVV@V޾V'@V2V>@VIMohan Boddu - 25-2Mohan Boddu - 25-1Dennis Gilmore - 25-0.14Zbigniew Jędrzejewski-Szmek - 25-0.13Stephen Gallagher - 25-0.12Mohan Boddu - 25-0.11Dennis Gilmore - 25-0.10Stephen Gallagher - 25-0.9Dennis Gilmore - 25-0.8Dennis Gilmor - 25-0.7Dennis Gilmore - 25-0.6Stephen Gallagher - 25-0.5Stephen Gallagher - 25-0.4Stephen Gallagher - 25-0.3Stephen Gallagher - 25-0.2Dennis Gilmore - 25-0.1- Support for the DRBD link-cleaning service - Add SUPPORT_URL definition to os-release- Setup for f25 final - snapd timers are enabled by default- bump for needed rebuild - add note on how to contribute- Fix mangled Release tag- Move convert-to-edition to its own subpackage - Eliminate circular dependency on bash from the base package - Enable switcheroo-control.service- Setup for branching.- apply fix from adamw for lua globbing bug rhbz#1349664- Fix %posttrans to properly write /usr/lib/variant for nonproduct- enable virtlogd.socket- drop Requires(post): sed - Fork to execute systemctl calls- Properly handle systemd presets in Lua scripts - enable opal-prd.service - Remove call to grub2-mkconfig- Add a subpackage for Atomic Host to provide /usr/lib/os-release differences- Rewrite scriptlets in Lua to avoid a circular dependency on coreutils - Be more specific with fedora-release-server's Cockpit requirement (Do not pull in all of the optional Cockpit components as mandatory)- Only run grub2-mkconfig for platforms that support it - Remove erroneous RPM_BUILD_ROOT variables in convert-to-edition- Fix typo that breaks %post on upgrades of Workstation and Cloud- setup for rawhide being f2525-225-2issue-serveros-release-server80-server.preset80-server.presetfedora-release-serverLICENSE/usr/lib/os.release.d//usr/lib/os.release.d/presets//usr/lib/systemd/system-preset//usr/share/licenses//usr/share/licenses/fedora-release-server/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tablesdrpmxz2noarch-redhat-linux-gnuASCII textcannot open `/builddir/build/BUILDROOT/fedora-release-25-2.noarch/usr/lib/systemd/system-preset/80-server.preset' (No such file or directory)directoryutf-8?P7zXZ !#,i]"k%w ƲkxyM\as3@,(K_6r-ϔ'e{DK1Fp1L&g`۰5g^ XMͱΦh &\o%m j'&iG\a?-+.X,O#$]4U<\uy#es׫өɷ !̾#t؟#GRaMpU+^V:vI6z/i->wzpd37>xZ":}tiH<ִ4<1_5\X M 8I|TIv/![f ʣU o"O 3#V^y03ލ֑I,+wy LBŔdFʧ5 `8u+2|]&F3\Es9-P~dibƱbuw 84-9~`tKL&o C@gGx}1hˣNƾ?fL]Vglħוoo^Y}]G?c P䦛9\'O+ESI2\&)ܻ/>5O&9jk8'tn*⫥O7D$D2-*ׄJ_Й¿*B,Rz&-ϕnnOLO;%!C !pU,8?1G<^u̓QG|ΌsppAԳ0<".Dgjh8K*J">=h&f6t;b k[*>քx d@>?`o@E}OȽM Zq,P[)~Mٹ/(b958hXb9+KtTQzNd cٙNcN97>mrf hLwh X=G]*8'5e,ELlfUZ^ޢ;["*JԝCZE4 =پRΕ.頄twǤO(KiēƴLE?(u~{a+9$ SC ]T/'A٪ߑiIdUztsXځj~b-t݃`\g 3CDYUIc:d8ʣ~T=#m}^)ҮJq7:Jw0KFZ_테'@k9]8 87CcBmp2׋@DL.O"hWhG}TcihT 9Ny6#1w*FdP6@Eـ%ׂҏpKMh8Iw c,\ YZ