def __init__(self, button3): self.button3 = button3 self.box1 = Gtk.VBox(False, 0) self.box1.show() box2 = Gtk.HBox(False, 0) self.box1.pack_start(box2, True, True, 0) box2.show() # Title Title = Gtk.Label( "<b><span size='xx-large'>ZFS Configuration</span></b>") Title.set_use_markup(True) # Chose disk sw = Gtk.ScrolledWindow(hexpand=True, vexpand=True) sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN) sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) store = Gtk.TreeStore(str, str, str, 'gboolean') for disk in zfs_disk_query(): dsk = disk.partition(':')[0].rstrip() dsk_name = disk.partition(':')[2].rstrip() dsk_size = zfs_disk_size_query(dsk).rstrip() store.append(None, [dsk, dsk_size, dsk_name, False]) treeView = Gtk.TreeView(store) treeView.set_model(store) treeView.set_rules_hint(True) self.check_cell = Gtk.CellRendererToggle() self.check_cell.set_property('activatable', True) self.check_cell.connect('toggled', self.col1_toggled_cb, store) cell = Gtk.CellRendererText() column = Gtk.TreeViewColumn(None, cell, text=0) column_header = Gtk.Label('Disk') column_header.set_use_markup(True) column_header.show() column.set_widget(column_header) column.set_sort_column_id(0) cell2 = Gtk.CellRendererText() column2 = Gtk.TreeViewColumn(None, cell2, text=0) column_header2 = Gtk.Label('Size(MB)') column_header2.set_use_markup(True) column_header2.show() column2.set_widget(column_header2) cell3 = Gtk.CellRendererText() column3 = Gtk.TreeViewColumn(None, cell3, text=0) column_header3 = Gtk.Label('Name') column_header3.set_use_markup(True) column_header3.show() column3.set_widget(column_header3) column1 = Gtk.TreeViewColumn("Check", self.check_cell) column1.add_attribute(self.check_cell, "active", 3) column.set_attributes(cell, text=0) column2.set_attributes(cell2, text=1) column3.set_attributes(cell3, text=2) treeView.append_column(column1) treeView.append_column(column) treeView.append_column(column2) treeView.append_column(column3) tree_selection = treeView.get_selection() tree_selection.set_mode(Gtk.SelectionMode.SINGLE) sw.add(treeView) sw.show() self.mirrorTips = Gtk.Label('Please select one drive') self.mirrorTips.set_justify(Gtk.Justification.LEFT) self.mirrorTips.set_alignment(0.01, 0.5) # Mirro, raidz and strip self.mirror = 'none' mirror_label = Gtk.Label('<b>Pool Type</b>') mirror_label.set_use_markup(True) mirror_box = Gtk.ComboBoxText() mirror_box.append_text("none") mirror_box.append_text("mirror") mirror_box.append_text("raidz1") mirror_box.append_text("raidz2") mirror_box.append_text("raidz3") mirror_box.append_text("strip") mirror_box.connect('changed', self.mirror_selection) mirror_box.set_active(0) # Pool Name self.zpool = False pool_check = Gtk.CheckButton('Pool Name') pool_check.connect("toggled", self.on_check_poll) self.pool = Gtk.Entry() self.pool.set_text('zroot') self.pool.set_sensitive(False) # Creating MBR or GPT drive label = Gtk.Label('<b>Partition Scheme</b>') label.set_use_markup(True) # Adding a combo box to selecting MBR or GPT sheme. self.scheme = 'GPT' shemebox = Gtk.ComboBoxText() shemebox.append_text("GPT") shemebox.append_text("MBR") shemebox.connect('changed', self.sheme_selection) shemebox.set_active(0) # Force 4k Sectors self.zfs_four_k = "False" check = Gtk.CheckButton("Force ZFS 4k block size") check.connect("toggled", self.on_check) # Swap Size ram = Popen(memory, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True) mem = ram.stdout.read() swap = int(mem.partition(':')[2].strip()) / (1024 * 1024) swp_size_label = Gtk.Label('<b>Swap Size(MB)</b>') swp_size_label.set_use_markup(True) self.swap_entry = Gtk.Entry() self.swap_entry.set_text(str(swap)) self.swap_entry.connect('changed', self.digit_only) # Swap encription self.swap_encrypt = False self.swap_encrypt_check = Gtk.CheckButton("Encrypt Swap") self.swap_encrypt_check.connect("toggled", self.on_check_swap_encrypt) # Swap mirror self.swap_mirror = False swap_mirror_check = Gtk.CheckButton("Mirror Swap") swap_mirror_check.connect("toggled", self.on_check_swap_mirror) # GELI Disk encription self.disk_encript = False encrypt_check = Gtk.CheckButton("Encrypt Disk") encrypt_check.connect("toggled", self.on_check_encrypt) # password self.passwd_label = Gtk.Label("Password") self.password = Gtk.Entry() self.password.set_sensitive(False) self.password.set_visibility(False) self.password.connect("changed", self.passwdstrength) self.strenght_label = Gtk.Label() self.strenght_label.set_alignment(0.1, 0.5) self.vpasswd_label = Gtk.Label("Verify it") self.repassword = Gtk.Entry() self.repassword.set_sensitive(False) self.repassword.set_visibility(False) self.repassword.connect("changed", self.passwdVerification) # set image for password matching self.img = Gtk.Image() self.img.set_alignment(0.2, 0.5) #table = Gtk.Table(12, 12, True) grid = Gtk.Grid() grid.set_row_spacing(10) # grid.set_column_homogeneous(True) # grid.set_row_homogeneous(True) grid.attach(Title, 1, 0, 8, 2) grid.attach(mirror_label, 1, 2, 1, 1) grid.attach(mirror_box, 2, 2, 1, 1) grid.attach(label, 6, 2, 2, 1) grid.attach(shemebox, 8, 2, 1, 1) grid.attach(self.mirrorTips, 1, 3, 8, 1) grid.attach(sw, 1, 4, 8, 3) grid.attach(pool_check, 5, 8, 2, 1) grid.attach(self.pool, 7, 8, 2, 1) grid.attach(check, 1, 8, 3, 1) grid.attach(swp_size_label, 5, 9, 2, 1) grid.attach(self.swap_entry, 7, 9, 2, 1) #grid.attach(self.swap_encrypt_check, 9, 15, 11, 12) #grid.attach(swap_mirror_check, 9, 15, 11, 12) grid.attach(encrypt_check, 1, 9, 2, 1) grid.attach(self.passwd_label, 1, 10, 1, 1) grid.attach(self.password, 2, 10, 2, 1) grid.attach(self.strenght_label, 4, 10, 2, 1) grid.attach(self.vpasswd_label, 1, 11, 1, 1) grid.attach(self.repassword, 2, 11, 2, 1) grid.attach(self.img, 4, 11, 2, 1) box2.pack_start(grid, True, True, 10) return
def __init__(self, button3): self.button3 = button3 self.box1 = Gtk.VBox(False, 0) self.box1.show() box2 = Gtk.HBox(False, 0) self.box1.pack_start(box2, True, True, 0) box2.show() # Title Title = Gtk.Label("<b><span size='xx-large'>UFS Full Disk Configuration</span></b>") Title.set_use_markup(True) # Chose disk sw = Gtk.ScrolledWindow(hexpand=True, vexpand=True) sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN) sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) store = Gtk.TreeStore(str, str, str,'gboolean') for disk in zfs_disk_query(): dsk = disk.partition(':')[0].rstrip() dsk_name = disk.partition(':')[2].rstrip() dsk_size = zfs_disk_size_query(dsk).rstrip() store.append(None, [dsk, dsk_size, dsk_name, False]) treeView = Gtk.TreeView(store) treeView.set_model(store) treeView.set_rules_hint(True) self.check_cell = Gtk.CellRendererToggle() self.check_cell.set_property('activatable', True) self.check_cell.connect('toggled', self.col1_toggled_cb, store) cell = Gtk.CellRendererText() column = Gtk.TreeViewColumn(None, cell, text=0) column_header = Gtk.Label('Disk') column_header.set_use_markup(True) column_header.show() column.set_widget(column_header) column.set_sort_column_id(0) cell2 = Gtk.CellRendererText() column2 = Gtk.TreeViewColumn(None, cell2, text=0) column_header2 = Gtk.Label('Size(MB)') column_header2.set_use_markup(True) column_header2.show() column2.set_widget(column_header2) cell3 = Gtk.CellRendererText() column3 = Gtk.TreeViewColumn(None, cell3, text=0) column_header3 = Gtk.Label('Name') column_header3.set_use_markup(True) column_header3.show() column3.set_widget(column_header3) column1 = Gtk.TreeViewColumn("Check", self.check_cell) column1.add_attribute(self.check_cell, "active", 3) column.set_attributes(cell, text=0) column2.set_attributes(cell2, text=1) column3.set_attributes(cell3, text=2) treeView.append_column(column1) treeView.append_column(column) treeView.append_column(column2) treeView.append_column(column3) tree_selection = treeView.get_selection() tree_selection.set_mode(Gtk.SelectionMode.SINGLE) sw.add(treeView) sw.show() self.mirrorTips = Gtk.Label('Please select one drive') self.mirrorTips.set_justify(Gtk.Justification.LEFT) self.mirrorTips.set_alignment(0.01, 0.5) self.mirror = False mirror_check = Gtk.CheckButton('Disk Mirror') mirror_check.connect("toggled", self.on_check_mirror) self.mirrorbl_box = Gtk.ComboBoxText() self.mirrorbl_box.append_text("load") self.mirrorbl_box.append_text("prefer") self.mirrorbl_box.append_text("round-robin") self.mirrorbl_box.append_text("split") self.mirrorbl_box.connect('changed', self.mirror_selection) self.mirrorbl_box.set_active(0) self.mirrorbl_box.set_sensitive(False) self.mirrorbl = 'load' # Creating MBR or GPT drive label = Gtk.Label('<b>Partition Scheme</b>') label.set_use_markup(True) # Adding a combo box to selecting MBR or GPT sheme. self.scheme = 'GPT' shemebox = Gtk.ComboBoxText() shemebox.append_text("GPT") shemebox.append_text("MBR") shemebox.connect('changed', self.sheme_selection) shemebox.set_active(0) # Swap Size ram = Popen(memory, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True) mem = ram.stdout.read() swap = int(mem.partition(':')[2].strip()) / (1024 * 1024) swp_size_label = Gtk.Label('<b>Swap Size(MB)</b>') swp_size_label.set_use_markup(True) self.swap_entry = Gtk.Entry() self.swap_entry.set_text(str(swap)) self.swap_entry.connect('changed', self.digit_only) # Swap encription self.swap_encrypt = False self.swap_encrypt_check = Gtk.CheckButton("Encrypt Swap") self.swap_encrypt_check.connect("toggled", self.on_check_swap_encrypt) # Swap mirror self.swap_mirror = False swap_mirror_check = Gtk.CheckButton("Mirror Swap") swap_mirror_check.connect("toggled", self.on_check_swap_mirror) # GELI Disk encription self.disk_encript = False encrypt_check = Gtk.CheckButton("Encrypt Disk") encrypt_check.connect("toggled", self.on_check_encrypt) encrypt_check.set_sensitive(True) # password self.passwd_label = Gtk.Label("Password") self.password = Gtk.Entry() self.password.set_sensitive(False) self.password.set_visibility(False) self.password.connect("changed", self.passwdstrength) self.strenght_label = Gtk.Label() self.strenght_label.set_alignment(0.1, 0.5) self.vpasswd_label = Gtk.Label("Verify it") self.repassword = Gtk.Entry() self.repassword.set_sensitive(False) self.repassword.set_visibility(False) self.repassword.connect("changed", self.passwdVerification) # set image for password matching fslabel = Gtk.Label("Mount point:") self.fstype = Gtk.ComboBoxText() self.fstype.append_text('UFS') self.fstype.append_text('UFS+S') self.fstype.append_text('UFS+J') self.fstype.append_text('UFS+SUJ') self.fstype.set_active(3) self.fstype.connect("changed", self.chosefs) self.fs = "UFS+SUJ" grid = Gtk.Grid() grid.set_row_spacing(10) # grid.set_column_homogeneous(True) # grid.set_row_homogeneous(True) grid.attach(Title, 0, 0, 9, 2) grid.attach(mirror_check, 0, 2, 1, 1) grid.attach(self.mirrorbl_box, 1, 2, 1, 1) grid.attach(label, 0, 9, 2, 1) grid.attach(shemebox, 2, 9, 1, 1) grid.attach(self.mirrorTips, 1, 3, 8, 1) grid.attach(sw, 0, 4, 9, 4) grid.attach(fslabel, 5, 9, 2, 1) grid.attach(self.fstype, 7, 9, 1, 1) grid.attach(swp_size_label, 5, 2, 2, 1) grid.attach(self.swap_entry, 7, 2, 1, 1) #grid.attach(self.swap_encrypt_check, 9, 15, 11, 12) #grid.attach(swap_mirror_check, 9, 15, 11, 12) #grid.attach(encrypt_check, 1, 9, 2, 1) #grid.attach(self.passwd_label, 1, 10, 1, 1) #grid.attach(self.password, 2, 10, 2, 1) #grid.attach(self.strenght_label, 4, 10, 2, 1) #grid.attach(self.vpasswd_label, 1, 11, 1, 1) #grid.attach(self.repassword, 2, 11, 2, 1) #grid.attach(self.img, 4, 11, 2, 1) box2.pack_start(grid, True, True, 10) return
def __init__(self, button3): self.button3 = button3 self.box1 = Gtk.VBox(False, 0) self.box1.show() box2 = Gtk.HBox(False, 0) self.box1.pack_start(box2, True, True, 0) box2.show() # Title Title = Gtk.Label("<b><span size='xx-large'>ZFS Configuration</span></b>") Title.set_use_markup(True) # Chose disk sw = Gtk.ScrolledWindow(hexpand=True, vexpand=True) sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN) sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) self.store = Gtk.TreeStore(str, str, str, 'gboolean') for disk in zfs_disk_query(): dsk = disk.partition(':')[0].rstrip() dsk_name = disk.partition(':')[2].rstrip() dsk_size = zfs_disk_size_query(dsk).rstrip() self.store.append(None, [dsk, dsk_size, dsk_name, False]) treeView = Gtk.TreeView(self.store) treeView.set_model(self.store) treeView.set_rules_hint(True) self.check_cell = Gtk.CellRendererToggle() self.check_cell.set_property('activatable', True) self.check_cell.connect('toggled', self.col1_toggled_cb, self.store) cell = Gtk.CellRendererText() column = Gtk.TreeViewColumn(None, cell, text=0) column_header = Gtk.Label('Disk') column_header.set_use_markup(True) column_header.show() column.set_widget(column_header) column.set_sort_column_id(0) cell2 = Gtk.CellRendererText() column2 = Gtk.TreeViewColumn(None, cell2, text=0) column_header2 = Gtk.Label('Size(MB)') column_header2.set_use_markup(True) column_header2.show() column2.set_widget(column_header2) cell3 = Gtk.CellRendererText() column3 = Gtk.TreeViewColumn(None, cell3, text=0) column_header3 = Gtk.Label('Name') column_header3.set_use_markup(True) column_header3.show() column3.set_widget(column_header3) column1 = Gtk.TreeViewColumn("Check", self.check_cell) column1.add_attribute(self.check_cell, "active", 3) column.set_attributes(cell, text=0) column2.set_attributes(cell2, text=1) column3.set_attributes(cell3, text=2) treeView.append_column(column1) treeView.append_column(column) treeView.append_column(column2) treeView.append_column(column3) tree_selection = treeView.get_selection() tree_selection.set_mode(Gtk.SelectionMode.SINGLE) sw.add(treeView) sw.show() self.mirrorTips = Gtk.Label('Please select one drive') self.mirrorTips.set_justify(Gtk.Justification.LEFT) self.mirrorTips.set_alignment(0.01, 0.5) # Mirro, raidz and stripe self.mirror = 'none' mirror_label = Gtk.Label('<b>Pool Type</b>') mirror_label.set_use_markup(True) mirror_box = Gtk.ComboBoxText() mirror_box.append_text("single disk") mirror_box.append_text("2 disk mirror") mirror_box.append_text("3 disk raidz1") mirror_box.append_text("4 disk raidz2") mirror_box.append_text("5 disk raidz3") mirror_box.append_text("2+ disk stripe") mirror_box.connect('changed', self.mirror_selection) mirror_box.set_active(0) # Pool Name self.zpool = False pool_check = Gtk.CheckButton('Pool Name') pool_check.connect("toggled", self.on_check_poll) self.pool = Gtk.Entry() self.pool.set_text('tank') self.pool.set_sensitive(False) # Creating MBR or GPT drive scheme_label = Gtk.Label('<b>Partition Scheme</b>') scheme_label.set_use_markup(True) # Adding a combo box to selecting MBR or GPT sheme. self.scheme = 'GPT' shemebox = Gtk.ComboBoxText() shemebox.append_text("GPT") shemebox.append_text("MBR") shemebox.connect('changed', self.sheme_selection) shemebox.set_active(0) if bios_or_uefi() == "UEFI": shemebox.set_sensitive(False) else: shemebox.set_sensitive(True) # Force 4k Sectors self.zfs_four_k = "True" zfs4kcheck = Gtk.CheckButton("Force ZFS 4k block size") zfs4kcheck.connect("toggled", self.on_check) zfs4kcheck.set_active(True) # Swap Size ram = Popen(memory, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, universal_newlines=True, close_fds=True) mem = ram.stdout.read() swap = 512 swp_size_label = Gtk.Label('<b>Swap Size(MB)</b>') swp_size_label.set_use_markup(True) self.swap_entry = Gtk.Entry() self.swap_entry.set_text(str(swap)) self.swap_entry.connect('changed', self.digit_only) # Swap encription self.swap_encrypt = False self.swap_encrypt_check = Gtk.CheckButton("Encrypt Swap") self.swap_encrypt_check.connect("toggled", self.on_check_swap_encrypt) # Swap mirror self.swap_mirror = False swap_mirror_check = Gtk.CheckButton("Mirror Swap") swap_mirror_check.connect("toggled", self.on_check_swap_mirror) # GELI Disk encription self.disk_encript = False encrypt_check = Gtk.CheckButton("Encrypt Disk") encrypt_check.connect("toggled", self.on_check_encrypt) encrypt_check.set_sensitive(True) # password self.passwd_label = Gtk.Label("Password") self.password = Gtk.Entry() self.password.set_sensitive(False) self.password.set_visibility(False) self.password.connect("changed", self.passwdstrength) self.strenght_label = Gtk.Label() self.strenght_label.set_alignment(0.1, 0.5) self.vpasswd_label = Gtk.Label("Verify it") self.repassword = Gtk.Entry() self.repassword.set_sensitive(False) self.repassword.set_visibility(False) self.repassword.connect("changed", self.passwdVerification) # set image for password matching self.img = Gtk.Image() self.img.set_alignment(0.2, 0.5) # table = Gtk.Table(12, 12, True) grid = Gtk.Grid() grid.set_row_spacing(10) # grid.set_column_homogeneous(True) # grid.set_row_homogeneous(True) grid.attach(Title, 1, 1, 10, 1) grid.attach(mirror_label, 1, 2, 1, 1) grid.attach(mirror_box, 2, 2, 1, 1) grid.attach(pool_check, 7, 2, 2, 1) grid.attach(self.pool, 9, 2, 2, 1) grid.attach(self.mirrorTips, 1, 3, 8, 1) grid.attach(zfs4kcheck, 9, 3, 2, 1) grid.attach(sw, 1, 4, 10, 3) grid.attach(scheme_label, 1, 9, 1, 1) grid.attach(shemebox, 2, 9, 1, 1) grid.attach(swp_size_label, 9, 9, 1, 1) grid.attach(self.swap_entry, 10, 9, 1, 1) # grid.attach(self.swap_encrypt_check, 9, 15, 11, 12) # grid.attach(swap_mirror_check, 9, 15, 11, 12) # grid.attach(encrypt_check, 2, 8, 2, 1) # grid.attach(self.passwd_label, 1, 9, 1, 1) # grid.attach(self.password, 2, 9, 2, 1) # grid.attach(self.strenght_label, 4, 9, 2, 1) # grid.attach(self.vpasswd_label, 1, 10, 1, 1) # grid.attach(self.repassword, 2, 10, 2, 1) # grid.attach(self.img, 4, 10, 2, 1) box2.pack_start(grid, True, True, 10) return
def __init__(self, button3): self.button3 = button3 self.box1 = Gtk.VBox(False, 0) self.box1.show() box2 = Gtk.HBox(False, 0) self.box1.pack_start(box2, True, True, 0) box2.show() # Title Title = Gtk.Label( "<b><span size='xx-large'>UFS Full Disk Configuration</span></b>") Title.set_use_markup(True) # Chose disk sw = Gtk.ScrolledWindow(hexpand=True, vexpand=True) sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN) sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) store = Gtk.TreeStore(str, str, str, 'gboolean') for disk in zfs_disk_query(): dsk = disk.partition(':')[0].rstrip() dsk_name = disk.partition(':')[2].rstrip() dsk_size = zfs_disk_size_query(dsk).rstrip() store.append(None, [dsk, dsk_size, dsk_name, False]) treeView = Gtk.TreeView(store) treeView.set_model(store) treeView.set_rules_hint(True) self.check_cell = Gtk.CellRendererToggle() self.check_cell.set_property('activatable', True) self.check_cell.connect('toggled', self.col1_toggled_cb, store) cell = Gtk.CellRendererText() column = Gtk.TreeViewColumn(None, cell, text=0) column_header = Gtk.Label('Disk') column_header.set_use_markup(True) column_header.show() column.set_widget(column_header) column.set_sort_column_id(0) cell2 = Gtk.CellRendererText() column2 = Gtk.TreeViewColumn(None, cell2, text=0) column_header2 = Gtk.Label('Size(MB)') column_header2.set_use_markup(True) column_header2.show() column2.set_widget(column_header2) cell3 = Gtk.CellRendererText() column3 = Gtk.TreeViewColumn(None, cell3, text=0) column_header3 = Gtk.Label('Name') column_header3.set_use_markup(True) column_header3.show() column3.set_widget(column_header3) column1 = Gtk.TreeViewColumn("Check", self.check_cell) column1.add_attribute(self.check_cell, "active", 3) column.set_attributes(cell, text=0) column2.set_attributes(cell2, text=1) column3.set_attributes(cell3, text=2) treeView.append_column(column1) treeView.append_column(column) treeView.append_column(column2) treeView.append_column(column3) tree_selection = treeView.get_selection() tree_selection.set_mode(Gtk.SelectionMode.SINGLE) sw.add(treeView) sw.show() self.mirrorTips = Gtk.Label('Please select one drive') self.mirrorTips.set_justify(Gtk.Justification.LEFT) self.mirrorTips.set_alignment(0.01, 0.5) self.mirror = False mirror_check = Gtk.CheckButton('Disk Mirror') mirror_check.connect("toggled", self.on_check_mirror) self.mirrorbl_box = Gtk.ComboBoxText() self.mirrorbl_box.append_text("load") self.mirrorbl_box.append_text("prefer") self.mirrorbl_box.append_text("round-robin") self.mirrorbl_box.append_text("split") self.mirrorbl_box.connect('changed', self.mirror_selection) self.mirrorbl_box.set_active(0) self.mirrorbl_box.set_sensitive(False) self.mirrorbl = 'load' # Creating MBR or GPT drive label = Gtk.Label('<b>Partition Scheme</b>') label.set_use_markup(True) # Adding a combo box to selecting MBR or GPT sheme. self.scheme = 'GPT' shemebox = Gtk.ComboBoxText() shemebox.append_text("GPT") shemebox.append_text("MBR") shemebox.connect('changed', self.sheme_selection) shemebox.set_active(0) if bios_or_uefi() == "UEFI": shemebox.set_sensitive(False) else: shemebox.set_sensitive(True) # Swap Size ram = Popen(memory, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, universal_newlines=True, close_fds=True) mem = ram.stdout.read() swap = 2048 swp_size_label = Gtk.Label('<b>Swap Size(MB)</b>') swp_size_label.set_use_markup(True) self.swap_entry = Gtk.Entry() self.swap_entry.set_text(str(swap)) self.swap_entry.connect('changed', self.digit_only) # Swap encription self.swap_encrypt = False self.swap_encrypt_check = Gtk.CheckButton("Encrypt Swap") self.swap_encrypt_check.connect("toggled", self.on_check_swap_encrypt) # Swap mirror self.swap_mirror = False swap_mirror_check = Gtk.CheckButton("Mirror Swap") swap_mirror_check.connect("toggled", self.on_check_swap_mirror) # GELI Disk encription self.disk_encript = False encrypt_check = Gtk.CheckButton("Encrypt Disk") encrypt_check.connect("toggled", self.on_check_encrypt) encrypt_check.set_sensitive(True) # password self.passwd_label = Gtk.Label("Password") self.password = Gtk.Entry() self.password.set_sensitive(False) self.password.set_visibility(False) self.password.connect("changed", self.passwdstrength) self.strenght_label = Gtk.Label() self.strenght_label.set_alignment(0.1, 0.5) self.vpasswd_label = Gtk.Label("Verify it") self.repassword = Gtk.Entry() self.repassword.set_sensitive(False) self.repassword.set_visibility(False) self.repassword.connect("changed", self.passwdVerification) # set image for password matching fslabel = Gtk.Label("File System:") self.fstype = Gtk.ComboBoxText() self.fstype.append_text('UFS') self.fstype.append_text('UFS+S') self.fstype.append_text('UFS+J') self.fstype.append_text('UFS+SUJ') self.fstype.set_active(3) self.fstype.connect("changed", self.chosefs) self.fs = "UFS+SUJ" grid = Gtk.Grid() grid.set_row_spacing(10) # grid.set_column_homogeneous(True) # grid.set_row_homogeneous(True) grid.attach(Title, 0, 0, 9, 2) grid.attach(mirror_check, 0, 2, 1, 1) grid.attach(self.mirrorbl_box, 1, 2, 1, 1) grid.attach(label, 0, 9, 2, 1) grid.attach(shemebox, 2, 9, 1, 1) grid.attach(self.mirrorTips, 1, 3, 8, 1) grid.attach(sw, 0, 4, 9, 4) grid.attach(fslabel, 5, 9, 2, 1) grid.attach(self.fstype, 7, 9, 1, 1) grid.attach(swp_size_label, 5, 2, 2, 1) grid.attach(self.swap_entry, 7, 2, 1, 1) # grid.attach(self.swap_encrypt_check, 9, 15, 11, 12) # grid.attach(swap_mirror_check, 9, 15, 11, 12) # grid.attach(encrypt_check, 1, 9, 2, 1) # grid.attach(self.passwd_label, 1, 10, 1, 1) # grid.attach(self.password, 2, 10, 2, 1) # grid.attach(self.strenght_label, 4, 10, 2, 1) # grid.attach(self.vpasswd_label, 1, 11, 1, 1) # grid.attach(self.repassword, 2, 11, 2, 1) # grid.attach(self.img, 4, 11, 2, 1) box2.pack_start(grid, True, True, 10) return