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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
<%-
def media_name(media, repo, type, archname)
name = [ media.capitalize ]
if archname != nil
name += [ archname ]
end
for r in repo.split('_') do
name += [ r.capitalize ]
end
if type != nil
name += [ type.capitalize ]
end
return name.join(' ')
end
def media_out(name, media_hash)
media_out = "[%s]\n" % name
media_hash.keys.sort.each{|key|
value = media_hash[key]
if value != nil
media_out += "%s=%s\n" % [ key, value ]
end
}
return media_out
end
distro = scope.lookupvar('buildsystem::var::distros::distros')[@distro_name]
-%>
[media_info]
version=<%= distro['version'] %>
mediacfg_version=2
branch=<%= distro['branch'] %>
<%-
if @arch != 'armv7hl'
-%>
arch=<%= @arch %>
<%-
end
-%>
xml-info=1
<%-
distro['medias'].keys.sort { |x,y| distro['medias'][x]['order'] <=> distro['medias'][y]['order'] }.each{|medianame|
media = distro['medias'][medianame]
media['repos'].keys.sort { |x,y| media['repos'][x]['order'] <=> media['repos'][y]['order'] }.each{|reponame|
repo = media['repos'][reponame]
media_type = []
if media['media_type'] != nil
media_type += media['media_type']
end
if repo['media_type'] != nil
media_type += repo['media_type']
end
noauto=nil
if (media['noauto'] == '1') or (repo['noauto'] == '1')
noauto='1'
end
updates_for = nil
if repo['updates_for'] != nil
updates_for = [ medianame, repo['updates_for'] ].join('/')
end
-%><%=
media_out [ medianame, reponame ].join('/'),
:hdlist => [ 'hdlist', medianame, reponame ].join('_') + '.cz',
:name => media_name(medianame, reponame, nil, nil),
:srpms => [ '../../SRPMS', medianame, reponame ].join('/'),
:media_type => media_type.join(':'),
:updates_for => updates_for,
:noauto => noauto
%>
<%-# debug -%>
<%-
debug_media_type = media_type + [ 'debug' ]
-%><%=
media_out [ 'debug', medianame, reponame ].join('/'),
:hdlist => [ 'hdlist_debug', medianame, reponame ].join('_') + '.cz',
:name => media_name(medianame, reponame, 'debug', nil),
:srpms => [ '../../SRPMS', medianame, reponame ].join('/'),
:media_type => debug_media_type.join(':'),
:noauto => '1'
%>
<%-# source -%>
<%-
source_media_type = media_type + [ 'source' ]
-%><%=
media_out [ '../../SRPMS', medianame, reponame ].join('/'),
:hdlist => [ 'hdlist', medianame, reponame ].join('_') + '.src.cz',
:name => media_name(medianame, reponame, 'sources', nil),
:rpms => [ medianame, reponame ].join('/'),
:media_type => source_media_type.join(':'),
:noauto => '1'
%>
<%-# we add 32bit media if arch is x86_64 -%>
<%-
if @arch == 'x86_64' and distro['arch'].include?('i586')
medianame32 = [ medianame, '32' ].join('')
-%><%=
media_out [ '../../i586/media', medianame, reponame ].join('/'),
:hdlist => [ 'hdlist', medianame32, reponame ].join('_') + '.src.cz',
:name => media_name(medianame, reponame, nil, '32bit'),
:media_type => media_type.join(':'),
:noauto => noauto
%>
<%-
end
}
}
if distro['based_on'] != nil
distro['based_on'].keys.sort.each{|bdistroname|
bdistro = distro['based_on'][bdistroname]
bdistro.keys.sort.each{|medianame|
media = bdistro[medianame]
for reponame in media
-%><%=
media_out [ bdistroname, medianame, reponame ].join('/'),
:hdlist => [ 'hdlist', bdistroname, medianame,
reponame ].join('_'),
:name => media_name([ medianame, bdistroname].join(''), reponame, nil, nil),
:media_type => 'base_distro',
:noauto => 1
%>
<%-
end
}
}
end
-%>
|