#!/usr/bin/env ruby
#
# Copyright (C) 2019 Harald Sitter <sitter@kde.org>
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) version 3, or any
# later version accepted by the membership of KDE e.V. (or its
# successor approved by the membership of KDE e.V.), which shall
# act as a proxy defined in Section 6 of version 3 of the license.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library.  If not, see <http://www.gnu.org/licenses/>.

# Generates new maintianer scripts

src_dir = "#{File.dirname(__dir__)}/data"

files = []
Dir.chdir(src_dir) do
  files = Dir.glob('**/*').select { |x| File.file?(x) }
  files.collect! { |x| "/#{x}"} # make absolute
end

VERSION_CODENAME = File.read("#{__dir__}/version_codename").strip

%w[preinst postrm].each do |script|
  input = "#{__dir__}/neon-language-unpacker.#{script}.in"
  output = "#{__dir__}/neon-language-unpacker.#{script}"
  preinst = File.read(input)
  preinst.gsub!('@@WARNING@@', '# !!!!! AUTOGENERATED: edit .in file! !!!!!')
  preinst.gsub!('@@VERSION_CODENAME@@', VERSION_CODENAME)
  preinst.gsub!('@@DIVERSIONS@@', files.join($/))
  File.write(output, preinst)
end
