]>
Commit | Line | Data |
---|---|---|
62eaa617 | 1 | {% extends "../base.html" %} |
140172cf | 2 | |
38d161c7 | 3 | {% block title %}{{ _("Fireinfo") }}{% end block %} |
140172cf | 4 | |
38d161c7 | 5 | {% block container %} |
a32f3644 RH |
6 | <section class="hero is-medium is-primary"> |
7 | <div class="hero-body"> | |
8 | <div class="container"> | |
ed83981e | 9 | <nav class="breadcrumb" aria-label="breadcrumbs"> |
a32f3644 RH |
10 | <ul> |
11 | <li> | |
12 | <a href="https://ipfire.org/"> | |
13 | Home | |
14 | </a> | |
15 | </li> | |
16 | <li class="is-active"> | |
17 | <a href="/"> | |
18 | {{ _("Fireinfo") }} | |
19 | </a> | |
20 | </li> | |
21 | </ul> | |
22 | </nav> | |
e52b45b6 | 23 | |
ed83981e | 24 | <h1 class="title">{{ _("Fireinfo") }}</h1> |
68e397dd | 25 | |
a32f3644 | 26 | <a class="button is-dark is-medium" href="/profile/random"> |
e6b114b8 MT |
27 | {{ _("Show a Random Profile") }} |
28 | </a> | |
29 | </div> | |
38d161c7 | 30 | </div> |
a32f3644 | 31 | </section> |
8337a9ab | 32 | |
a32f3644 | 33 | <section class="section"> |
11ee2139 | 34 | <div class="container"> |
a32f3644 | 35 | <div class="columns is-vcentered"> |
11ee2139 | 36 | {% if latest_release %} |
278a2971 MT |
37 | {% set usage = latest_release.get_usage(when=when) %} |
38 | ||
a32f3644 | 39 | <div class="column is-half is-centered"> |
11ee2139 | 40 | <div> |
ed83981e | 41 | <h1 class="title has-text-primary"> |
278a2971 | 42 | {{ "%.2f%%" % (usage * 100) }} |
11ee2139 MT |
43 | </h1> |
44 | ||
a32f3644 | 45 | <h5 class="title is-5"> |
f088f0c7 MT |
46 | {{ _("of all IPFire systems are on the latest release, released %s") % locale.format_date(latest_release.published, relative=True, shorter=True) }} |
47 | </h5> | |
ed2e3c1f | 48 | |
a32f3644 | 49 | <a class="button is-primary is-outlined" href="/releases"> |
ed2e3c1f MT |
50 | {{ _("See All Releases") }} |
51 | </a> | |
11ee2139 MT |
52 | </div> |
53 | </div> | |
54 | {% end %} | |
f088f0c7 | 55 | |
a32f3644 RH |
56 | <div class="column is-one-third is-centered"> |
57 | <img src="{{ static_url("img/ipfire-tux.png") }}" alt="IPFire Logo" /> | |
f088f0c7 | 58 | </div> |
11ee2139 MT |
59 | </div> |
60 | </div> | |
61 | </section> | |
62 | ||
a32f3644 | 63 | <section class="section has-background-primary-light"> |
574a88c7 | 64 | <div class="container"> |
a32f3644 | 65 | <h4 class="title is-4">{{ _("Locations") }}</h4> |
07499b81 | 66 | |
278a2971 | 67 | {% for cc in sorted(locations, key=lambda cc: locations[cc], reverse=True) %} |
a32f3644 | 68 | <div class="columns is-mobile"> |
278a2971 | 69 | {% if locations[cc] >= 0.01 %} |
a32f3644 | 70 | <div class="column is-one-fifth"> |
278a2971 MT |
71 | <span class="flag-icon flag-icon-{{ cc.lower() }}"></span> |
72 | <span class="">{{ format_country_name(cc) }}</span> | |
a32f3644 | 73 | </div> |
07499b81 | 74 | |
a32f3644 | 75 | <div class="column is-7"> |
278a2971 | 76 | {% module ProgressBar(locations[cc], "success") %} |
a32f3644 | 77 | </div> |
07499b81 | 78 | {% end %} |
a32f3644 RH |
79 | </div> |
80 | {% end %} | |
574a88c7 | 81 | |
278a2971 MT |
82 | {% set other_countries = [cc for cc in locations if locations[cc] < 0.01] %} |
83 | ||
84 | {% if other_countries %} | |
85 | <p> | |
86 | <span class="has-text-weight-bold">IPFire<span class="has-text-primary">_</span></span> | |
87 | {{_("is also running in these countries: %s") % locale.list([(format_country_name(cc) or cc) for cc in other_countries]) }} | |
88 | </p> | |
89 | {% end %} | |
574a88c7 MT |
90 | </div> |
91 | </section> | |
92 | ||
a32f3644 | 93 | <section class="section"> |
84604476 | 94 | <div class="container"> |
a32f3644 RH |
95 | <div class="columns is-vcentered"> |
96 | <div class="column is-half"> | |
97 | <div class="block"> | |
98 | <h4 class="title is-4">{{ _("CPU Vendors") }}</h4> | |
5a34028b | 99 | |
278a2971 | 100 | {% for vendor in sorted(cpu_vendors, key=lambda v: cpu_vendors[v], reverse=True) %} |
a32f3644 | 101 | <div class="columns"> |
278a2971 | 102 | <div class="column is-1">{{ vendor }}</div> |
5a34028b | 103 | |
a32f3644 | 104 | <div class="column"> |
278a2971 | 105 | {% module ProgressBar(cpu_vendors[vendor], "success") %} |
a32f3644 RH |
106 | </div> |
107 | </div> | |
5a34028b | 108 | {% end %} |
84604476 | 109 | |
a32f3644 | 110 | <a class="button is-primary" href="/processors"> |
e6b114b8 MT |
111 | {{ _("Processor Features") }} |
112 | </a> | |
113 | </div> | |
a32f3644 RH |
114 | |
115 | <div class="block"> | |
116 | <h4 class="title is-4">{{ _("Architectures") }}</h4> | |
117 | ||
278a2971 | 118 | {% for arch in sorted(arches, key=lambda a: arches[a], reverse=True) %} |
a32f3644 | 119 | <div class="columns"> |
278a2971 | 120 | <div class="column is-1">{{ arch }}</div> |
a32f3644 RH |
121 | |
122 | <div class="column"> | |
278a2971 | 123 | {% module ProgressBar(arches[arch], "success") %} |
a32f3644 RH |
124 | </div> |
125 | </div> | |
126 | {% end %} | |
127 | </div> | |
128 | </div> | |
129 | <div class="column is-half has-text-centered"> | |
ed83981e | 130 | <h1 class="title">{{ format_size(memory_avg * 1024, "MB") }}</h1> |
a32f3644 RH |
131 | |
132 | <span class="tag"> | |
133 | {{ _("Average Amount of Memory") }} | |
134 | </span> | |
84604476 MT |
135 | </div> |
136 | </div> | |
137 | </div> | |
138 | </section> | |
139 | ||
a32f3644 | 140 | <section class="section"> |
c4099434 | 141 | <div class="container"> |
a32f3644 RH |
142 | <div class="columns is-vcentered"> |
143 | <div class="column is-half has-text-centered"> | |
ed83981e | 144 | <h1 class="title has-text-primary"> |
a32f3644 RH |
145 | {{ "%.2f%%" % (virtual_ratio * 100) }} |
146 | </h1> | |
147 | ||
148 | <h5 class="title is-5">{{ _("of all IPFire systems are running in a virtual environment") }}</h5> | |
c4099434 MT |
149 | </div> |
150 | ||
a32f3644 RH |
151 | <div class="column is-half"> |
152 | <h4 class="title is-4">{{ _("Top Hypervisors") }}</h4> | |
c4099434 | 153 | |
278a2971 | 154 | {% for vendor in sorted(hypervisors, key=lambda v: hypervisors[v], reverse=True) %} |
a32f3644 | 155 | <div class="columns"> |
278a2971 | 156 | {% if hypervisors[vendor] >= 0.01 %} |
a32f3644 | 157 | <div class="column is-1"> |
278a2971 | 158 | {% if vendor == "unknown" %} |
c4099434 | 159 | <span class="text-muted">{{ _("Unknown") }}</span> |
278a2971 | 160 | {% elif vendor == "VMWare" %} |
c4099434 MT |
161 | VMware |
162 | {% else %} | |
278a2971 | 163 | {{ vendor }} |
c4099434 | 164 | {% end %} |
a32f3644 | 165 | </div> |
11ee2139 | 166 | |
a32f3644 | 167 | <div class="column is-8"> |
278a2971 | 168 | {% module ProgressBar(hypervisors[vendor], "success") %} |
a32f3644 | 169 | </div> |
c4099434 | 170 | {% end %} |
a32f3644 RH |
171 | </div> |
172 | {% end %} | |
c4099434 MT |
173 | </div> |
174 | </div> | |
175 | </div> | |
176 | </section> | |
140172cf | 177 | {% end block %} |