/usr/bin/update-indymedia-cities is in samizdat 0.7.0-1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | #!/usr/bin/env ruby
#
# create cities.inc from http://www.indymedia.org/cities.xml
#
# Copyright (c) 2005-2009 Dmitry Borodaenko <angdraug@debian.org>
#
# This program is free software.
# You can distribute/modify this program under the terms of
# the GNU General Public License version 3 or later.
#
# vim: et sw=4 sts=4 ts=8 tw=0
require 'open-uri'
require 'rexml/document'
# borrowed from CGI
def escape_html(string)
string.gsub(/&/n, '&').gsub(/\"/n, '"').gsub(/\'/n, ''').gsub(/>/n, '>').gsub(/</n, '<')
end
# recursive unwrapping of cities.xml
def print_key(key)
case key.next_element.name
when 'array'
text = key.text.strip
if '' != text and 'NULL' != text then
print %{<strong>#{text}:</strong>\n}
end
key.next_element.each_element('dict/key') {|e| print_key e }
when 'string'
print %{<a href="#{key.next_element.text.strip}">#{escape_html(key.text.strip)}</a>\n}
end
end
cities = open('http://www.indymedia.org/cities.xml') {|f| f.read }
root = REXML::Document.new(cities).root
root.each_element('/plist/dict/key') {|e| print_key e }
|