blob: 64c28afe690ead7386cbd5ad6bd6fb82703b7f9a (
plain)
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
|
#
# mirrorselect-sync_gui.py: gui mirrorselect.
#
# Copyright (C) 2011 wiktor w brodlo
# Copyright (C) 2011 Gentoo Foundation
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program 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 General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
import string
import gtk
import gtk.glade
import gtk.gdk
import gobject
import pango
import sys
import gui
import os
from mirrorselect_gui import MirrorselectWindow
from iw_gui import *
from constants import *
import gettext
_ = lambda x: gettext.ldgettext("anaconda", x)
class MirrorselectSyncWindow(InstallWindow):
def getNext(self):
for button in self.buttons:
if button.get_property("active"):
self.anaconda.mirrors_sync.append(button.get_property("label"))
return None
def getScreen(self, anaconda):
self.anaconda = anaconda
self.intf = anaconda.intf
ms = MirrorselectWindow(InstallWindow)
(self.xml, self.align) = gui.getGladeWidget("mirrorselect.glade", "mirrorselect_align")
self.intro_label = self.xml.get_widget("intro_label")
self.intro_label.set_label(_("Choose your Portage sync mirror(s).\nThese are used to sync your Portage tree."))
mirrorsf = None
while mirrorsf == None:
# Try downloading the mirrorlist
mirrorsf = ms.downloadMirrorlist()
# if failed,
if mirrorsf == None:
md = gtk.MessageDialog(buttons=gtk.BUTTONS_YES_NO)
md.set_property("title", _("Failed to download mirrorlist"))
md.set_property("text", _("Failed to download the mirror list. Would you like to try again?\nPressing 'No' will abort the installation."))
if md.run() == gtk.RESPONSE_NO:
md.destroy()
InstallControlWindow._doExit([])
mirrors_parsed = ms.parseMirrors(mirrorsf)
self.mirrors = ms.mirrorList(mirrors_parsed, "rsync")
ms.addMirrors(self.mirrors, mirrors_parsed)
self.buttons = ms.buttons
return self.align
|