def __init__(self, squeue):
        super(SilentProcess, self).__init__()
        multiprocessing.Process.__init__(self)

        self.daemon = True
        self.squeue = squeue

        self.destFile = os.path.join(UKSC_CACHE_DIR,"uksc.db")
        self.connect = sqlite3.connect(self.destFile, timeout=30.0, check_same_thread=False)
        self.connect.execute('pragma journal_mode=wal;')
        self.cursor = self.connect.cursor()

        self.premoter = PistonRemoter(service_root=UBUNTUKYLIN_SERVER)
Exemplo n.º 2
0
    def __init__(self):
        self.updatecount = 0
        srcFile = os.path.join(UBUNTUKYLIN_DATA_PATH, "uksc.db")
        destFile = os.path.join(UKSC_CACHE_DIR, "uksc.db")

        # no cache file, copy
        if not os.path.exists(destFile):
            if not os.path.exists(srcFile):
                if (Globals.DEBUG_SWITCH):
                    print("error with db file")
                return
            open(destFile, "wb").write(open(srcFile, "rb").read())

        self.connect = sqlite3.connect(destFile,
                                       timeout=30.0,
                                       check_same_thread=False)
        self.connect.execute('pragma journal_mode=wal;')
        self.connect.cursor()
        self.cursor = self.connect.cursor()
        self.cat_list = []

        # cache file need update, copy
        if self.is_cachedb_need_update():
            open(destFile, "wb").write(open(srcFile, "rb").read())

        # piston remoter to ukscs
        self.premoter = PistonRemoter(service_root=UBUNTUKYLIN_SERVER)

        #___________________________add by zhangxin for xapiandb update___________________________#

        xapian_srcFile = XAPIAN_DB_SOURCE_PATH
        xapian_destFile = os.path.join(UKSC_CACHE_DIR, "xapiandb")

        # no cache file, copy
        if not os.path.exists(xapian_destFile):
            if not os.path.exists(xapian_srcFile):
                if (Globals.DEBUG_SWITCH):
                    print(
                        "No xapiandb source in /usr/share/ubuntu-kylin-software-center/data/,please reinstall it"
                    )
                return
            copytree(xapian_srcFile, xapian_destFile)
            if (Globals.DEBUG_SWITCH):
                print("Xapiandb has been copy to cache")

        # cache xapiandb need update, copy
        if self.is_xapiancachedb_need_update():
            rmtree(xapian_destFile)
            copytree(xapian_srcFile, xapian_destFile)
            if (Globals.DEBUG_SWITCH):
                print("cache xapiandb versin updated")
    def __init__(self, parent=None):
        QWidget.__init__(self, parent)
        self.ui_init()
        self.setWindowFlags(Qt.FramelessWindowHint)
        self.ui.bg.lower()
        self.move(280, 60)
        self.ui.topWidget.raise_()
        palette = QPalette()
        brush = QBrush(QColor(0, 0, 0, 0))
        brush.setStyle(Qt.SolidPattern)
        palette.setBrush(QPalette.All, QPalette.Base, brush)
        self.premoter = PistonRemoter()
        #self.ui.btnAdd.setFocusPolicy(Qt.NoFocus)
        self.ui.groupBox.setFocusPolicy(Qt.NoFocus)
        self.ui.groupBox_2.setFocusPolicy(Qt.NoFocus)
        self.ui.btnAdd.setFocusPolicy(Qt.NoFocus)
        self.ui.btnAdd_2.setFocusPolicy(Qt.NoFocus)
        self.ui.btnAdd_3.setFocusPolicy(Qt.NoFocus)
        self.ui.btnAdd_4.setFocusPolicy(Qt.NoFocus)
        self.ui.checkBox_4.setFocusPolicy(Qt.NoFocus)
        self.ui.checkBox_4.setChecked(False)
        self.ui.btnClose.setFocusPolicy(Qt.NoFocus)

        self.ui.btnClose.clicked.connect(self.hide)
        self.ui.btnClose.clicked.connect(self.slot_click_close)
        self.ui.btnAdd.clicked.connect(self.slot_click_login)
        self.ui.btnAdd_2.clicked.connect(self.slot_click_adduser)
        self.ui.lesource_2.setEchoMode(QLineEdit.Password)
        self.ui.lesource_4.setEchoMode(QLineEdit.Password)
        self.ui.lesource_2.setContextMenuPolicy(Qt.NoContextMenu)
        self.ui.lesource_4.setContextMenuPolicy(Qt.NoContextMenu)
        self.ui.lesource.textChanged.connect(self.slot_le_input)
        self.ui.lesource_2.textChanged.connect(self.slot_le_input2)
        self.ui.lesource_3.textChanged.connect(self.slot_le_input3)
        self.ui.lesource_4.textChanged.connect(self.slot_le_input4)
        self.ui.lesource_5.textChanged.connect(self.slot_le_input5)

        self.ui.text10.clicked.connect(self.find_password_suc)
        self.ui.lesource.setMaxLength(30)
        self.ui.lesource_2.setMaxLength(30)
        self.ui.lesource_3.setMaxLength(30)
        self.ui.lesource_4.setMaxLength(30)
        self.ui.lesource_5.setMaxLength(30)

        self.timer = QTimer(self)  # 初始化一个定时器

        #self.ui.lesource_8.setMaxLength(16)
        #self.ui.lesource_9.setMaxLength(16)
        self.ui.tips_user_password.setText("用户名或密码错误")
        self.ui.tips_user_password.setAlignment(Qt.AlignCenter)  #设置字体居中
        self.ui.btnAdd.setText("立即登录")
        self.ui.btnAdd_2.setText("注册新账号")
        self.ui.btnAdd_3.setText("登录")
        self.ui.btnAdd_3.clicked.connect(self.slot_login)

        self.ui.btnAdd_4.setText("立即注册")
        self.ui.btnAdd_4.clicked.connect(self.slot_adduser)

        self.ui.lesource.setPlaceholderText("请输入您的用户名")
        self.ui.usr_icon.setStyleSheet(
            "QWidget{background-image:url('res/username.png');background-color:#ffffff;border:0px}"
        )
        self.ui.lesource_2.setPlaceholderText("请输入密码")
        self.ui.password_icon.setStyleSheet(
            "QWidget{background-image:url('res/password.png');background-color:#ffffff;border:0px}"
        )
        self.ui.lesource_3.setPlaceholderText("请输入用户名")
        self.ui.creat_usr_icon.setStyleSheet(
            "QWidget{background-image:url('res/username.png');background-color:#ffffff;border:0px}"
        )
        self.ui.lesource_4.setPlaceholderText("请输入密码")
        self.ui.create_password_icon.setStyleSheet(
            "QWidget{background-image:url('res/password.png');background-color:#ffffff;border:0px}"
        )
        self.ui.lesource_5.setPlaceholderText("请输入注册邮箱")
        self.ui.create_exmail_icon.setStyleSheet(
            "QWidget{background-image:url('res/exmail.png');background-color:#ffffff;border:0px}"
        )

        #self.ui.lesource_8.setPlaceholderText("记住密码")
        #self.ui.lesource_9.setPlaceholderText("自动登录")
        #self.ui.text1.setText("登录软件中心:")
        #self.ui.text1.setStyleSheet("color:#ff6600;")
        #self.ui.text1.setStyleSheet("color:1997FAB;")
        # self.ui.text2.setText("用户名:")
        # self.ui.text3.setText("密    码:")
        # self.ui.text4.setText("用户名:")
        # self.ui.text5.setText("密    码:")zh
        # self.ui.text6.setText("邮    箱:")
        self.ui.text7.setText("是否是开发者")
        self.ui.text8.setText("记住密码")
        self.ui.text9.setText("自动登录")
        self.ui.text10.setText("找回密码")
        self.ui.soft_linedit.setText("软件商店")
        self.ui.spot_linedit.setText("·")
        self.ui.login_linedit.setText("登录")
        self.ui.register_newuser.setText("注册新账户")
        self.ui.register_newuser.hide()
        self.ui.groupBox_2.hide()
        self.ui.log_png.setStyleSheet(
            "QWidget{background-image:url('res/smalllogo.png');}")
        self.ui.soft_linedit.setStyleSheet(
            "QLabel{font-weight:bold;color:#666666}")
        self.ui.login_linedit.setStyleSheet("QLabel{color:#666666}")
        self.ui.spot_linedit.setStyleSheet("QLabel{color:#666666}")
        self.ui.register_newuser.setStyleSheet("QLabel{color:#666666}")
        self.ui.spot_linedit.setStyleSheet("QLabel{font-weight:bold;}")
        #self.ui.sourceWidget.setStyleSheet("QWidget{border:0px solid #c0d3dd;border-radius:2px;color:#0763ba;background:#ebf2f9;}")
        #self.ui.sourceWidget.setStyleSheet("QPushButton{border:1px solid #026c9e;color:#ebf2f9;}")
        self.ui.sourceWidget.setStyleSheet(
            ".QWidget{border:1px solid #cccccc;background-color:#ffffff}")
        self.ui.topWidget.setStyleSheet(
            "QWidget{border:0px;background-color:#eff2f6}")

        self.ui.clickWidget.setStyleSheet(
            "QWidget{border:0px solid #c0d3dd;border-radius:2px;color:#0763ba;background:#c0d3dd;}"
        )

        self.ui.tips_user_password.setStyleSheet(
            "QLabel{background-color:#fffae1;font-size:12px;border:1px solid #fff0d4;color:#ff5b50;}"
        )

        #self.ui.sourceWidget.setStyleSheet("color:#ebf2f9i;")
        #self.ui.btnAds.setStyleSheet("QPushButton{color:white;border:-2px;background-image:url('res/wincard-run-btn-1.png');}")
        #self.ui.btnAds.setStyleSheet("QPushButton{color:white;border:-2px;background-image:url('res/wincard-un-btn-2.png');}")
        #self.ui.text1.setText("登录软件中心:")
        #self.ui.text1.setStyleSheet("color:#ff6600;")
        self.ui.text1.setStyleSheet("color:1997FAB;")
        self.ui.bg.setStyleSheet(
            "QLabel{border:0px solid #c0d3dd;border-radius:2px;color:#026c9e;background:#ebf2f9;}"
        )
        #self.ui.bg.setStyleSheet("QLabel{border:0px solid #026c9e;border-radius:1px;color:#ebf2f9;font-size:13px;background-image:url('res/1.png');}")

        self.ui.btnClose.setStyleSheet(
            "QPushButton{background-image:url('res/close-1.png');border:0px;}QPushButton:hover{background:url('res/close-2.png');background-color:#bb3c3c;}QPushButton:pressed{background:url('res/close-3.png');background-color:#bb3c3c;}"
        )
        #self.ui.btnClose.setStyleSheet("QPushButton{background-image:url('res/delete-normal.png');border:0px;}QPushButton:hover{background:url('res/delete-pressed.png');}QPushButton:pressed{background:url('res/delete-pressed.png');}")

        #self.ui.lesource.setStyleSheet("QLineEdit{border:0px solid #6BB8DD;border-radius:1px;color:#497FAB;font-size:13px;}")
        self.ui.groupBox.setStyleSheet("QGroupBox{border:0px;}")
        self.ui.groupBox_2.setStyleSheet("QGroupBox{border:0px;}")
        self.ui.btnAdd.setStyleSheet(
            "QPushButton{border:0px;font-size:12px;no-repeat center left;color:#2d8ae1}QPushButton:hover{font-size:13px;color:#2d8ae1;}"
        )
        self.ui.btnAdd_2.setStyleSheet(
            "QPushButton{border:0px;font-size:12px;no-repeat center left;color:#2d8ae1}QPushButton:hover{font-size:13px;color:#2d8ae1;}"
        )
        self.ui.lesource_parent.setStyleSheet(
            "QWidget{border:1px solid #bec2cc;border-radius:2px;color:#997FAB;font-size:12px;}QWidget:hover{border:1px solid #2d8ae1;}"
        )
        self.ui.lesource_2_parent.setStyleSheet(
            "QWidget{border:1px solid #bec2cc;border-radius:2px;color:#997FAB;font-size:12px;}QWidget:hover{border:1px solid #2d8ae1;}"
        )
        self.ui.lesource_3_parent.setStyleSheet(
            "QWidget{border:1px solid #bec2cc;border-radius:2px;color:#997FAB;font-size:12px;}QWidget:hover{border:1px solid #2d8ae1;}"
        )
        self.ui.lesource_4_parent.setStyleSheet(
            "QWidget{border:1px solid #bec2cc;border-radius:2px;color:#997FAB;font-size:12px;}QWidget:hover{border:1px solid #2d8ae1;}"
        )
        self.ui.lesource_5_parent.setStyleSheet(
            "QWidget{border:1px solid #bec2cc;border-radius:2px;color:#997FAB;font-size:12px;}QWidget:hover{border:1px solid #2d8ae1;}"
        )

        self.ui.lesource.setStyleSheet(
            "QLineEdit{border:0px;border-radius:2px;color:#aaaaaa;font-size:12px;}QLineEdit:pressed{color:#000000;}"
        )
        self.ui.lesource_2.setStyleSheet(
            "QLineEdit{border:0px;border-radius:2px;color:#aaaaaa;font-size:12px;}QLineEdit:pressed{color:#000000;}"
        )
        self.ui.lesource_3.setStyleSheet(
            "QLineEdit{border:0px;border-radius:2px;color:#aaaaaa;font-size:12px;}QLineEdit:pressed{color:#000000;}"
        )
        self.ui.lesource_4.setStyleSheet(
            "QLineEdit{border:0px;border-radius:2px;color:#aaaaaa;font-size:12px;}QLineEdit:pressed{color:#000000;}"
        )
        self.ui.lesource_5.setStyleSheet(
            "QLineEdit{border:0px;border-radius:2px;color:#aaaaaa;font-size:12px;}QLineEdit:pressed{color:#000000;}"
        )
        #self.ui.lesource_8.setStyleSheet("QLineEdit{border:1px solid #6BB8DD;border-radius:2px;color:#997FAB;font-size:13px;}")
        #self.ui.lesource_9.setStyleSheet("QLineEdit{border:1px solid #6BB8DD;border-radius:2px;color:#997FAB;font-size:13px;}")

        # self.ui.btnAdd_3.setStyleSheet("QPushButton{color:white;border:0px;border-radius:4px;backgroound-color:#2d8ae1;}QPushButton:hover{border:0px;}QPushButton:pressed{border:0px;}")
        self.ui.btnAdd_3.setStyleSheet(
            "QPushButton{background-color:#2d8ae1;border:0px;font-size:16px;border-radius:4px;color:#ffffff}QPushButton:hover{background-color:#3580c4;border:0px;border-radius:4px;font-size:16px;color:#ffffff}"
        )
        # self.ui.btnAdd_4.setStyleSheet("QPushButton{color:white;border:0px;border-radius:4px;background-image:url('res/click-up-btn-2.png');}QPushButton:hover{border:0px;background-image:url('res/click-up-btn-3.png');}QPushButton:pressed{border:0px;background-image:url('res/click-up-btn-1.png');}")
        self.ui.btnAdd_4.setStyleSheet(
            "QPushButton{background-color:#2d8ae1;border:0px;font-size:16px;border-radius:4px;color:#ffffff}QPushButton:hover{background-color:#3580c4;border:0px;border-radius:4px;font-size:16px;color:#ffffff}"
        )
        self.ui.text10.setStyleSheet(
            "QPushButton{border:0px;font-size:12px;color:#2d8ae1;}QPushButton:hover{border:0px;font-size:13px;color:#2d8ae1;}QPushButton:pressed{border:0px;font-size:13px;color:#2d8ae1;}"
        )
        self.ui.text10.setFocusPolicy(Qt.NoFocus)
        if (Globals.SET_REM):
            self.ui.lesource.setText(Globals.OS_USER)
            self.ui.lesource_2.setText(Globals.PASSWORD)
            self.ui.checkBox_5.setChecked(True)