adding css for windows titles

This commit is contained in:
ericbsd
2018-11-08 21:48:54 -04:00
parent 7860bed9f0
commit a3c2a67226
14 changed files with 314 additions and 108 deletions
+30
View File
@@ -35,6 +35,7 @@ def datafilelist(installbase, sourcebase):
prefix = sys.prefix
lib_gbinstall = [
'src/confirm_installation.py',
'src/create_cfg.py',
'src/db_partition.py',
'src/end.py',
@@ -67,11 +68,40 @@ slide_images = [
'src/slide-images/ghostbsd/welcome.png'
]
backend_query = [
'src/backend-query/detect-laptop.sh',
'src/backend-query/detect-nics.sh',
'src/backend-query/detect-sheme.sh',
'src/backend-query/detect-vmware.sh',
'src/backend-query/detect-wifi.sh',
'src/backend-query/disk-info.sh',
'src/backend-query/disk-label.sh',
'src/backend-query/disk-list.sh',
'src/backend-query/disk-part.sh',
'src/backend-query/enable-net.sh',
'src/backend-query/list-components.sh',
'src/backend-query/list-rsync-backups.sh',
'src/backend-query/list-tzones.sh',
'src/backend-query/query-langs.sh',
'src/backend-query/send-logs.sh',
'src/backend-query/setup-ssh-keys.sh',
'src/backend-query/sys-mem.sh',
'src/backend-query/test-live.sh',
'src/backend-query/test-netup.sh',
'src/backend-query/update-part-list.sh',
'src/backend-query/xkeyboard-layouts.sh',
'src/backend-query/xkeyboard-models.sh',
'src/backend-query/xkeyboard-variants.sh'
]
# '{prefix}/share/man/man1'.format(prefix=sys.prefix), glob('data/*.1')),
data_files = [
(f'{prefix}/share/applications', ['src/gbinstall.desktop']),
(f'{prefix}/lib/gbinstall', lib_gbinstall),
(f'{prefix}/lib/gbinstall/backend-query', backend_query),
(f'{prefix}/lib/gbinstall/slide-images/ghostbsd', slide_images)
]
+120
View File
@@ -0,0 +1,120 @@
#!/usr/bin/env python
#
#####################################################################
# Copyright (c) 2009-2012, GhostBSD. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistribution's of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# 2. Redistribution's in binary form must reproduce the above
# copyright notice,this list of conditions and the following
# disclaimer in the documentation and/or other materials provided
# with the distribution.
#
# 3. Neither then name of GhostBSD Project nor the names of its
# contributors maybe used to endorse or promote products derived
# from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES(INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#####################################################################
# language.py show the language for the installer.
from gi.repository import Gtk, Gdk
import os
import os.path
import sys
from create_cfg import gbsd_cfg
# Folder use for the installer.
tmp = "/tmp/.gbinstall/"
pcinstallcfg = f'{tmp}pcinstall.cfg'
installer = "/usr/local/lib/gbinstall/"
logo = f"{installer}logo.png"
if not os.path.exists(tmp):
os.makedirs(tmp)
sys.path.append(installer)
cssProvider = Gtk.CssProvider()
# if os.path.exists(rcconfgbsd):
# print(True)
cssProvider.load_from_path('/usr/local/lib/gbinstall/ghostbsd-style.css')
# elif os.path.exists(rcconfdbsd):
# cssProvider.load_from_path('/usr/local/lib/gbi/desktopbsd-style.css')
screen = Gdk.Screen.get_default()
styleContext = Gtk.StyleContext()
styleContext.add_provider_for_screen(screen, cssProvider,
Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)
class Summary:
def __init__(self, button3):
gbsd_cfg()
cfg_file = open(pcinstallcfg, 'r')
cfg_text = cfg_file.read()
cfg_file.close()
button3.set_sensitive(True)
# Add a Default vertical box
self.vbox1 = Gtk.VBox(False, 0)
self.vbox1.show()
# Add a second vertical box
label = Gtk.Label("Installation Summary", name="Header")
label.set_property("height-request", 40)
self.vbox1.pack_start(label, False, False, 0)
grid = Gtk.Grid()
self.vbox1.pack_start(grid, True, True, 0)
grid.set_row_spacing(10)
grid.set_column_spacing(3)
grid.set_column_homogeneous(True)
grid.set_row_homogeneous(True)
grid.set_margin_left(10)
grid.set_margin_right(10)
grid.set_margin_top(10)
grid.set_margin_bottom(10)
# Adding a Scrolling Window
scrolledwindow = Gtk.ScrolledWindow()
scrolledwindow.set_hexpand(True)
scrolledwindow.set_vexpand(True)
scrolledwindow.show()
grid.attach(scrolledwindow, 0, 1, 3, 1)
self.textview = Gtk.TextView()
self.textbuffer = self.textview.get_buffer()
self.textbuffer.set_text(cfg_text)
scrolledwindow.add(self.textview)
# self.wellcometext = Gtk.Label(welltext)
# self.wellcometext.set_use_markup(True)
# table = Gtk.Table()
# table.attach(self.wellcome, 0, 1, 1, 2)
# wall = Gtk.Label()
# table.attach(wall, 0, 1, 2, 3)
# table.attach(self.wellcometext, 0, 1, 3, 4)
# vhbox.pack_start(table, False, False, 5)
# image = Gtk.Image()
# image.set_from_file(logo)
# image.show()
# grid.attach(self.wellcome, 1, 1, 3, 1)
# vhbox.pack_start(image, True, True, 5)
# grid.attach(vhbox, 2, 2, 2, 9)
grid.show()
return
def get_model(self):
return self.vbox1
+3 -21
View File
@@ -45,7 +45,7 @@ class gbsd_cfg():
if os.path.exists(language):
langfile = open(language, 'r')
lang = langfile.readlines()[0].rstrip()
f.writelines('\n# System Language\n\n')
f.writelines('\n# System Language\n')
f.writelines(f'localizeLang={lang}\n')
os.remove(language)
# Keyboard Setting
@@ -148,6 +148,7 @@ class gbsd_cfg():
root = rf[0]
f.writelines('\n# Set the root pass\n')
f.writelines(f'rootPass={root}\n')
os.remove(f'{tmp}root')
if os.path.exists(user_passwd):
# Network Configuration
f.writelines('\n# Network Configuration\n')
@@ -170,29 +171,10 @@ class gbsd_cfg():
f.writelines(f'defaultGroup=wheel\n')
f.writelines(f'userGroups=operator\n')
f.writelines('commitUser\n')
os.remove(user_passwd)
f.writelines('runScript=/root/iso_to_hd.sh\n')
f.writelines('runCommand=rm -f /root/iso_to_hd.sh\n')
if os.path.exists(zfs_config):
zfsark = """echo 'vfs.zfs.arc_max="512M"' >> /boot/loader.conf"""
f.writelines(f'runCommand={zfsark}')
# adding setting for keyboard in slim
keyboard_conf = '/usr/local/etc/X11/xorg.conf.d/keyboard.conf'
k_conf_list = [
'Section "InputClass"',
' Identifier "Keyboard0"',
' Driver "kbd"',
f' Option "XkbLayout" "{kbl}"'
]
if kbv != 'None':
k_conf_list.append(f' Option "XkbVariant" "{kbv}"')
if kbm != 'None':
k_conf_list.append(f' Option "XkbModel" "{kbm}"')
k_conf_list.append('EndSection')
for conf_line in k_conf_list:
if 'Section "InputClass"' == conf_line:
cmd = f"""echo '{conf_line}' > {keyboard_conf}"""
else:
cmd = f"""echo '{conf_line}' >> {keyboard_conf}"""
f.writelines(f'runCommand={cmd}\n')
f.close()
os.remove(user_passwd)
+14 -6
View File
@@ -42,11 +42,19 @@ pc_sysinstall = "/usr/local/sbin/pc-sysinstall"
partitiondb = f"{tmp}partitiondb/"
diskdb = f"{partitiondb}disk"
query_disk = f'{pc_sysinstall} disk-list'
detect_sheme = f'{pc_sysinstall} detect-sheme'
query_partition = f'{pc_sysinstall} disk-part'
query_label = f'{pc_sysinstall} disk-label'
disk_info = f'{pc_sysinstall} disk-info'
query = f'{installer}backend-query'
query_disk = f'sh {query}/disk-list.sh'
detect_sheme = f'sh {query}/detect-sheme.sh'
query_partition = f'sh {query}/disk-part.sh'
query_label = f'sh {query}/disk-label.sh'
disk_info = f'sh {query}/disk-info.sh'
# query_disk = f'{pc_sysinstall} disk-list'
# detect_sheme = f'{pc_sysinstall} detect-sheme'
# query_partition = f'{pc_sysinstall} disk-part'
# query_label = f'{pc_sysinstall} disk-label'
# disk_info = f'{pc_sysinstall} disk-info'
memory = 'sysctl hw.physmem'
disk_file = f'{tmp}disk'
@@ -503,7 +511,7 @@ class autoDiskPartition():
slice_file.writelines('%s\n' % number)
slice_file.close()
ram = Popen(memory, shell=True, stdin=PIPE, stdout=PIPE,
universal_newlines=True, close_fds=True)
universal_newlines=True, close_fds=True)
mem = ram.stdout.read()
swap = int(int(mem.partition(':')[2].strip()) / (1024 * 1024))
if bios_or_uefi() == "UEFI":
+1
View File
@@ -51,5 +51,6 @@ class PyApp(gtk.Window):
box2.pack_start(table)
window.show_all()
PyApp()
gtk.main()
+1
View File
@@ -56,5 +56,6 @@ class PyApp:
box2.pack_start(table)
window.show_all()
PyApp()
gtk.main()
+6 -7
View File
@@ -44,6 +44,7 @@ from language import Language
from installType import Types
from use_ufs import use_ufs
from partition import Partitions
from confirm_installation import Summary
from use_zfs import ZFS
from db_partition import partition_repos
from install import installProgress, installSlide
@@ -80,6 +81,7 @@ class MainWindow():
get_types = self.types.get_model()
typebox.pack_start(get_types, True, True, 0)
label = Gtk.Label("Types")
self.button1.set_sensitive(True)
self.notebook.insert_page(typebox, label, 1)
self.window.show_all()
self.notebook.next_page()
@@ -123,19 +125,16 @@ class MainWindow():
self.partition.save_selection()
Rbox = Gtk.VBox(False, 0)
Rbox.show()
self.rootuser = RootUser(self.button3)
get_root = self.rootuser.get_model()
self.summary = Summary(self.button3)
get_root = self.summary.get_model()
Rbox.pack_start(get_root, True, True, 0)
label = Gtk.Label("Root Password")
self.button3.set_label("Install")
self.notebook.insert_page(Rbox, label, 3)
self.window.show_all()
self.notebook.next_page()
self.button3.set_sensitive(False)
self.rootuser.save_selection()
Abox = Gtk.VBox(False, 0)
Abox.show()
elif page == 3:
self.adduser.save_selection()
# self.adduser.save_selection()
Ibox = Gtk.VBox(False, 0)
Ibox.show()
install = installSlide()
+1 -1
View File
@@ -8,7 +8,7 @@ Icon[C]=/usr/local/lib/gbinstall/install.png
Name[C]=GhostBSD Installer
Categories=GNOME;GTK;System;
NoDisplay=true
Exec=sudo gbi
Exec=sudo gbinstall
Comment[C]=GhostBSD Installer
Name=GhostBSD Installer
Comment=GhostBSD Installer
+21 -18
View File
@@ -13,10 +13,9 @@ from gi.repository import Gtk, GLib
import threading
# import locale
import os
from subprocess import Popen, PIPE, STDOUT, call
from subprocess import Popen, PIPE, call
from time import sleep
from db_partition import rDeleteParttion, destroyParttion, makingParttion
from create_cfg import gbsd_cfg
from slides import gbsdSlides
# from slides import dbsdSlides
import sys
@@ -34,13 +33,12 @@ def update_progess(probar, bartext):
def read_output(command, probar):
GLib.idle_add(update_progess, probar, "Stoping hald service")
call('service hald stop', shell=True)
GLib.idle_add(update_progess, probar, "Creating pcinstall.cfg")
# If rc.conf.ghostbsd exists run gbsd_cfg
gbsd_cfg()
sleep(1)
GLib.idle_add(update_progess, probar, "Umount /media/GhostBSD")
call('umount /media/GhostBSD', shell=True)
sleep(2)
sleep(1)
if os.path.exists(tmp + 'delete'):
GLib.idle_add(update_progess, probar, "Deleting partition")
rDeleteParttion()
@@ -55,10 +53,15 @@ def read_output(command, probar):
GLib.idle_add(update_progess, probar, "Creating new partitions")
makingParttion()
sleep(1)
p = Popen(command, shell=True, stdin=PIPE, stdout=PIPE,
stderr=STDOUT, close_fds=True, universal_newlines=True)
process = Popen(
command,
shell=True,
stdout=PIPE,
close_fds=True,
universal_newlines=True
)
while True:
line = p.stdout.readline()
line = process.stdout.readline()
if not line:
break
bartext = line.rstrip()
@@ -70,11 +73,11 @@ def read_output(command, probar):
print(bartext)
call('service hald start', shell=True)
if bartext.rstrip() == "Installation finished!":
Popen('python2.7 %send.py' % installer, shell=True, close_fds=True)
Popen(f'python3.6 {installer}end.py', shell=True, close_fds=True)
call("rm -rf /tmp/.gbi/", shell=True, close_fds=True)
Gtk.main_quit()
else:
Popen('python2.7 %serror.py' % installer, shell=True, close_fds=True)
Popen(f'python3.6 {installer}error.py', shell=True, close_fds=True)
Gtk.main_quit()
@@ -103,12 +106,12 @@ class installProgress():
def __init__(self):
self.pbar = Gtk.ProgressBar()
self.pbar.set_show_text(True)
command = '%s -c %spcinstall.cfg' % (sysinstall, tmp)
thr = threading.Thread(target=read_output,
args=(command, self.pbar))
thr.setDaemon(True)
thr.start()
self.pbar.show()
# command = '%s -c %spcinstall.cfg' % (sysinstall, tmp)
# thr = threading.Thread(target=read_output,
# args=(command, self.pbar))
# thr.setDaemon(True)
# thr.start()
# self.pbar.show()
def getProgressBar(self):
return self.pbar
+21 -16
View File
@@ -10,7 +10,7 @@
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
from gi.repository import Gtk, Gdk
import os
import os.path
@@ -25,6 +25,17 @@ disk_file = '%sdisk' % tmp
boot_file = '%sboot' % tmp
signal = '%ssignal' % tmp
cssProvider = Gtk.CssProvider()
# if os.path.exists(rcconfgbsd):
# print(True)
cssProvider.load_from_path('/usr/local/lib/gbinstall/ghostbsd-style.css')
# elif os.path.exists(rcconfdbsd):
# cssProvider.load_from_path('/usr/local/lib/gbi/desktopbsd-style.css')
screen = Gdk.Screen.get_default()
styleContext = Gtk.StyleContext()
styleContext.add_provider_for_screen(screen, cssProvider,
Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)
class Types():
@@ -54,7 +65,7 @@ class Types():
return self.ne
def get_model(self):
return self.box1
return self.vbox1
def boot_manager(self, radiobutton, val):
self.boot = val
@@ -63,20 +74,14 @@ class Types():
boot.close()
def __init__(self):
self.box1 = Gtk.VBox(False, 0)
self.box1.show()
box2 = Gtk.VBox(False, 10)
# box2.set_border_width(10)
self.box1.pack_start(box2, False, False, 0)
box2.show()
# auto partition or Customize Disk Partition.
self.vbox1 = Gtk.VBox(False, 0)
self.vbox1.show()
label = Gtk.Label("Installation Type And Boot Manager", name="Header")
label.set_property("height-request", 40)
self.vbox1.pack_start(label, False, False, 0)
bbox = Gtk.VBox()
label = Gtk.Label('<b><span size="xx-large">Installation Type And Boot Manager</span></b>')
label.set_use_markup(True)
box2.pack_start(label, False, False, 10)
# create a Hbox to center the radio button.
hbox = Gtk.HBox()
box2.pack_start(hbox, False, False, 10)
self.vbox1.pack_start(hbox, False, False, 10)
full_ufs = Gtk.RadioButton.new_with_label_from_widget(None, "UFS Full Disk Configuration")
bbox.pack_start(full_ufs, False, True, 10)
full_ufs.connect("toggled", self.fstype, "ufs")
@@ -98,7 +103,7 @@ class Types():
# Boot option.
box3 = Gtk.VBox(False, 0)
box3.set_border_width(10)
self.box1.pack_start(box3, False, False, 0)
self.vbox1.pack_start(box3, False, False, 0)
box3.show()
label = Gtk.Label('<b><span size="x-large">Boot Manager Option</span></b>')
label.set_use_markup(True)
@@ -130,5 +135,5 @@ class Types():
boot.close()
self.box3 = Gtk.VBox(False, 0)
self.box3.set_border_width(0)
self.box1.pack_start(self.box3, True, True, 0)
self.vbox1.pack_start(self.box3, True, True, 0)
return
+17 -3
View File
@@ -35,7 +35,7 @@
# language.py show the language for the installer.
from gi.repository import Gtk
from gi.repository import Gtk, Gdk
import os
import os.path
from sys_handler import language_dictionary
@@ -52,6 +52,18 @@ title = "Welcome To GhostBSD!"
welltext = """Select the language you want to use with GhostBSD."""
cssProvider = Gtk.CssProvider()
# if os.path.exists(rcconfgbsd):
# print(True)
cssProvider.load_from_path('/usr/local/lib/gbinstall/ghostbsd-style.css')
# elif os.path.exists(rcconfdbsd):
# cssProvider.load_from_path('/usr/local/lib/gbi/desktopbsd-style.css')
screen = Gdk.Screen.get_default()
styleContext = Gtk.StyleContext()
styleContext.add_provider_for_screen(screen, cssProvider,
Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)
class Language:
# On selection it overwrite the delfaut language file.
@@ -84,7 +96,9 @@ class Language:
# Add a Default vertical box
self.vbox1 = Gtk.VBox(False, 0)
self.vbox1.show()
# Add a second vertical box
label = Gtk.Label("Welcome To GhostBSD!", name="Header")
label.set_property("height-request", 40)
self.vbox1.pack_start(label, False, False, 0)
grid = Gtk.Grid()
self.vbox1.pack_start(grid, True, True, 0)
grid.set_row_spacing(10)
@@ -130,7 +144,7 @@ class Language:
image = Gtk.Image()
image.set_from_file(logo)
image.show()
grid.attach(self.wellcome, 1, 1, 3, 1)
# grid.attach(self.wellcome, 1, 1, 3, 1)
vhbox.pack_start(image, True, True, 5)
grid.attach(vhbox, 2, 2, 2, 9)
grid.show()
+30 -14
View File
@@ -33,7 +33,7 @@ POSSIBILITY OF SUCH DAMAGE.
# auto_partition.py create and delete partition slice for GhostBSD installer
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk, GObject
from gi.repository import Gtk, Gdk
import os
import shutil
from db_partition import partition_repos, disk_query, Delete_partition
@@ -70,6 +70,18 @@ boot_file = "%sboot" % tmp
ufs_Partiton_list = []
cssProvider = Gtk.CssProvider()
# if os.path.exists(rcconfgbsd):
# print(True)
cssProvider.load_from_path('/usr/local/lib/gbinstall/ghostbsd-style.css')
# elif os.path.exists(rcconfdbsd):
# cssProvider.load_from_path('/usr/local/lib/gbi/desktopbsd-style.css')
screen = Gdk.Screen.get_default()
styleContext = Gtk.StyleContext()
styleContext.add_provider_for_screen(screen, cssProvider,
Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)
class Partitions():
def on_fs(self, widget):
@@ -576,19 +588,17 @@ class Partitions():
def __init__(self, button3):
self.button3 = button3
self.box1 = Gtk.VBox(False, 0)
self.box1.show()
box2 = Gtk.VBox(False, 10)
box2.set_border_width(0)
self.box1.pack_start(box2, True, True, 0)
box2.show()
self.vbox1 = Gtk.VBox(False, 0)
self.vbox1.show()
# Title
Title = Gtk.Label("<b><span size='xx-large'>Partition Editor</span></b> ")
Title.set_use_markup(True)
box2.pack_start(Title, False, False, 20)
label = Gtk.Label("UFS Partition Editor", name="Header")
label.set_property("height-request", 40)
self.vbox1.pack_start(label, False, False, 0)
# Choosing disk to Select Create or delete partition.
label = Gtk.Label("<b>Select a drive:</b>")
label.set_use_markup(True)
sw = Gtk.ScrolledWindow(hexpand=True, vexpand=True)
sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN)
sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC)
@@ -637,10 +647,16 @@ class Partitions():
self.tree_selection.connect("changed", self.partition_selection)
sw.add(self.treeview)
sw.show()
box2.pack_start(sw, True, True, 0)
box2 = Gtk.HBox(False, 10)
box2 = Gtk.VBox(False, 10)
box2.set_border_width(10)
self.box1.pack_start(box2, False, False, 10)
self.vbox1.pack_start(box2, True, True, 0)
box2.show()
box2.pack_start(sw, True, True, 0)
box2 = Gtk.HBox(False, 10)
box2.set_border_width(0)
self.vbox1.pack_start(box2, False, False, 0)
box2.show()
self.scheme = 'GPT'
box2.pack_start(self.delete_create_button(),
@@ -671,4 +687,4 @@ class Partitions():
def get_model(self):
self.tree_selection.select_path(0)
return self.box1
return self.vbox1
+24 -11
View File
@@ -28,7 +28,7 @@ ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
"""
from gi.repository import Gtk
from gi.repository import Gtk, Gdk
import os
import os.path
import re
@@ -50,6 +50,17 @@ boot_file = '%sboot' % tmp
ufs_dsk_list = []
cssProvider = Gtk.CssProvider()
# if os.path.exists(rcconfgbsd):
# print(True)
cssProvider.load_from_path('/usr/local/lib/gbinstall/ghostbsd-style.css')
# elif os.path.exists(rcconfdbsd):
# cssProvider.load_from_path('/usr/local/lib/gbi/desktopbsd-style.css')
screen = Gdk.Screen.get_default()
styleContext = Gtk.StyleContext()
styleContext.add_provider_for_screen(screen, cssProvider,
Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)
# Find if pasword contain only lower case and number
def lowerCase(strg, search=re.compile(r'[^a-z]').search):
@@ -216,14 +227,12 @@ class use_ufs():
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()
self.vbox1 = Gtk.VBox(False, 0)
self.vbox1.show()
# Title
Title = Gtk.Label("<b><span size='xx-large'>UFS Full Disk Configuration</span></b>")
Title.set_use_markup(True)
label = Gtk.Label("UFS Full Disk Configuration", name="Header")
label.set_property("height-request", 40)
self.vbox1.pack_start(label, False, False, 0)
# Chose disk
sw = Gtk.ScrolledWindow(hexpand=True, vexpand=True)
sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN)
@@ -345,9 +354,13 @@ class use_ufs():
self.fs = "UFS+SUJ"
grid = Gtk.Grid()
grid.set_row_spacing(10)
grid.set_margin_left(10)
grid.set_margin_right(10)
grid.set_margin_top(10)
grid.set_margin_bottom(10)
# grid.set_column_homogeneous(True)
# grid.set_row_homogeneous(True)
grid.attach(Title, 0, 0, 9, 2)
# 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)
@@ -367,12 +380,12 @@ class use_ufs():
# 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)
self.vbox1.pack_start(grid, True, True, 0)
return
def get_model(self):
del ufs_dsk_list[:]
return self.box1
return self.vbox1
def digit_only(self, *args):
text = self.swap_entry.get_text().strip()
+25 -11
View File
@@ -28,7 +28,7 @@ ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
"""
from gi.repository import Gtk
from gi.repository import Gtk, Gdk
import os
import os.path
import re
@@ -56,6 +56,18 @@ global zfs_dsk_list
zfs_dsk_list = []
cssProvider = Gtk.CssProvider()
# if os.path.exists(rcconfgbsd):
# print(True)
cssProvider.load_from_path('/usr/local/lib/gbinstall/ghostbsd-style.css')
# elif os.path.exists(rcconfdbsd):
# cssProvider.load_from_path('/usr/local/lib/gbi/desktopbsd-style.css')
screen = Gdk.Screen.get_default()
styleContext = Gtk.StyleContext()
styleContext.add_provider_for_screen(screen, cssProvider,
Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)
# Find if pasword contain only lower case and number
def lowerCase(strg, search=re.compile(r'[^a-z]').search):
return not bool(search(strg))
@@ -283,14 +295,12 @@ class ZFS():
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()
self.vbox1 = Gtk.VBox(False, 0)
self.vbox1.show()
# Title
Title = Gtk.Label("<b><span size='xx-large'>ZFS Configuration</span></b>")
Title.set_use_markup(True)
label = Gtk.Label("ZFS Full Disk Configuration", name="Header")
label.set_property("height-request", 40)
self.vbox1.pack_start(label, False, False, 0)
# Chose disk
sw = Gtk.ScrolledWindow(hexpand=True, vexpand=True)
sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN)
@@ -420,9 +430,13 @@ class ZFS():
# table = Gtk.Table(12, 12, True)
grid = Gtk.Grid()
grid.set_row_spacing(10)
grid.set_margin_left(10)
grid.set_margin_right(10)
grid.set_margin_top(10)
grid.set_margin_bottom(10)
# grid.set_column_homogeneous(True)
# grid.set_row_homogeneous(True)
grid.attach(Title, 1, 0, 8, 2)
# 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)
@@ -443,11 +457,11 @@ class ZFS():
# 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)
self.vbox1.pack_start(grid, True, True, 0)
return
def get_model(self):
return self.box1
return self.vbox1
def digit_only(self, *args):
text = self.swap_entry.get_text().strip()