diff --git a/PepProTools/pepkumo.py b/PepProTools/pepkumo.py index 0392baffd..e03a87c7c 100755 --- a/PepProTools/pepkumo.py +++ b/PepProTools/pepkumo.py @@ -23,6 +23,7 @@ import ttkbootstrap as ttk import bsconf + # setup the window pwin = bsconf.bbstyle # ttk.Window(themename="darkly") @@ -162,10 +163,8 @@ def ssbwritepvt(): """Write the private py file that will be SSB """ nmg = txtcappname.get() nm = "".join(nmg.split()) - ur = txtcappuser.get() pth = "/home/" + ur + "/.local/share/" - wurl = txtcappaddrs.get() ico = txtcapppath.get() setburl = ' baseurl = "' + wurl + '"\n' @@ -533,16 +532,33 @@ def favi(): """Try to get the Website Favicon""" nm = txtcappname.get() wurl = txtcappaddrs.get() - pth = "'/usr/share/pixmaps/" + nm + ".png'" - icons = favicon.get(wurl) - icon = icons[0] - response = requests.get(icon.url, stream=True) - with open("/usr/share/pixmaps/" + nm + '.{}'.format(icon.format), 'wb') as image: - for chunk in response.iter_content(1024): - image.write(chunk) - txtcapppath.delete(0, END) - txtcapppath.insert(0, pth) + pth = "/usr/share/pixmaps/" + nm + try: + icons = favicon.get(wurl) + icon = icons[0] + response = requests.get(icon.url, stream=True) + except: + os.system('python3 /opt/pypep/pepkumo_favicon_error.py') + else: + with open("/usr/share/pixmaps/" + nm + '.{}'.format(icon.format), 'wb') as image: + for chunk in response.iter_content(1024): + image.write(chunk) + if os.path.exists(pth + ".ico"): + upthico = "'/usr/share/pixmaps/" + nm + ".ico'" + txtcapppath.delete(0, END) + txtcapppath.insert(0, upthico) + elif os.path.exists(pth + ".png"): + upthpng = "'/usr/share/pixmaps/" + nm + ".png'" + txtcapppath.delete(0, END) + txtcapppath.insert(0, upthpng) + elif os.path.exists(pth + ".jpg"): + upthjpg = "'/usr/share/pixmaps/" + nm + ".jpg'" + txtcapppath.delete(0, END) + txtcapppath.insert(0, upthjpg) + else: + os.system('python3 /opt/pypep/pepkumo_favicon_error.py') + print("I give up") def closeme(): """Close the Application""" @@ -607,7 +623,7 @@ def delapp(): def delprofilecache(): - """This will delete th profile cache of the ssb""" + """This will delete the profile cache of the ssb""" appn = txtcappnameed.get() nm = "".join(appn.split()) usr = txtcappuser.get() @@ -710,7 +726,7 @@ def cmenu(event): def getinfo(): - """This will get enfor from the db and the forms as needed""" + """This will get info from the db and the forms as needed""" # The query variables menuapp = cmbo.get() usr = txtcappuser.get() @@ -765,29 +781,6 @@ def getlaunch(): txtcapppathl.configure(state="disabled") -def launchapp(): - """This function will run the slected applition selected""" - # set the variables - appn = cmboappl.get() - usr = usr = txtcappuser.get() - # get the data - pbval = """ SELECT Count(*) from kumoapp WHERE appname=? AND usrname=? AND public = 'yes' """ - # run the pval query and fetch the result - pcur.execute(pbval, (appn, usr)) - pubresult = pcur.fetchone() - # set the base path for the opt folder - fldpy = "/opt/pypep/" - # set the base path for the home folder - spath = "/home/" + usr + "/.local/share/" - if int(pubresult[0]) > 0: - # demote the user so it will launch the ssb - os.setuid(1000) - os.system('python3 ' + fldpy + appn + ".py") - print("Launch the Public App") - else: - print("Launch the private App") - - def updateproc(): """This is the complete update process to update the db and refresh the filesystems""" # get the input and combo values @@ -859,13 +852,11 @@ pnb = ttk.Notebook(pwin, bootstyle="danger") pnb.pack(pady=10, expand=True) fnb1 = ttk.Frame(pnb, width=450, height=400) fnb2 = ttk.Frame(pnb, width=450, height=400) -fnb3 = ttk.Frame(pnb, width=450, height=400) fnb1.pack(fill='both', expand=True) fnb2.pack(fill='both', expand=True) -fnb3.pack(fill='both', expand=True) pnb.add(fnb1, text='Create') pnb.add(fnb2, text='Manage') -pnb.add(fnb3, text='Apps') + # create the menu bar rcmen = tk.Menu(fnb1, tearoff=0) @@ -1049,66 +1040,7 @@ cbdel = ttk.Checkbutton( command=delapp) cbdel.place(x=280, y=60) - -#### -# App Launcher tab. -#### - -lblcmboappl = ttk.Label(fnb3, text="Select App:") -lblcmboappl.place(x=10, y=30) - -cmboappl = ttk.Combobox(fnb3, bootstyle="danger") -cmboappl.place(x=10, y=50) -cmboappl['values'] = (inptcm()) - - -lblcappaddrsl = ttk.Label(fnb3, text="URL:") -lblcappaddrsl.place(x=10, y=90) -txtcappaddrsl = ttk.Entry(fnb3, bootstyle="danger", width=45) -txtcappaddrsl.place(x=10, y=110) - -lblcapppathl = ttk.Label(fnb3, text="Icon Location:") -lblcapppathl.place(x=10, y=150) -txtcapppathl = ttk.Entry(fnb3, bootstyle="danger", width=25) -txtcapppathl.place(x=10, y=170) - -lblapplmsg = ttk.Label( - fnb3, - wraplength=400, - text="Select the App you want to launch. This is an easy way to run" - " your application without installing a SSB App. After you have" - " selected the app you want to launch click the Run button") -lblapplmsg.place(x=10, y=220) - -btnlnch = ttk.Button( - fnb3, - text="Run", - cursor="hand2", - bootstyle="light-outline", - width=5, - command=launchapp) -btnlnch.place(x=290, y=310) - -btnexl = ttk.Button( - fnb3, - text="Close", - cursor="hand2", - bootstyle="light-outline", - width=5, - command=closeme) -btnexl.place(x=370, y=310) - -btngolnch = ttk.Button( - fnb3, - text="Go", - cursor="hand2", - bootstyle="light-outline", - width=3, - command=getlaunch) -btngolnch.place(x=220, y=50) - - # get the context menu pwin.bind("", cmenu) dben() -pwin.mainloop() +pwin.mainloop() \ No newline at end of file diff --git a/PepProTools/ttkcreator/__init__.py b/PepProTools/ttkcreator/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/PepProTools/ttkcreator/__main__.py b/PepProTools/ttkcreator/__main__.py new file mode 100644 index 000000000..ea6c9ce23 --- /dev/null +++ b/PepProTools/ttkcreator/__main__.py @@ -0,0 +1,472 @@ +import shutil +import json +from uuid import uuid4 +from pathlib import Path +import ttkbootstrap as ttk +from tkinter import Frame +from tkinter.colorchooser import askcolor +from tkinter.filedialog import askopenfilename, asksaveasfilename +from ttkbootstrap.themes import standard, user +from ttkbootstrap.style import ThemeDefinition +from ttkbootstrap.constants import * +from ttkbootstrap.dialogs import Messagebox + + +class ThemeCreator(ttk.Window): + def __init__(self): + super().__init__("TTK Creator") + self.configure_frame = ttk.Frame(self, padding=(10, 10, 5, 10)) + self.configure_frame.pack(side=LEFT, fill=BOTH, expand=YES) + self.demo_frame = ttk.Frame(self, padding=(5, 10, 10, 10)) + self.demo_frame.pack(side=LEFT, fill=BOTH, expand=YES) + self.setup_theme_creator() + self.demo_widgets = DemoWidgets(self, self.style) + self.demo_widgets.pack(fill=BOTH, expand=YES) + + def setup_theme_creator(self): + # application menu + self.menu = ttk.Menu() + self.menu.add_command(label="Save", command=self.save_theme) + self.menu.add_command(label="Reset", command=self.change_base_theme) + self.menu.add_command(label="Import", command=self.import_user_themes) + self.menu.add_command(label="Export", command=self.export_user_themes) + self.configure(menu=self.menu) + + # theme configuration settings + ## user theme name + f1 = ttk.Frame(self.configure_frame, padding=(5, 2)) + ttk.Label(f1, text="name", width=12).pack(side=LEFT) + self.theme_name = ttk.Entry(f1) + self.theme_name.insert(END, "new theme") + self.theme_name.pack(side=LEFT, fill=X, expand=YES) + f1.pack(fill=X, expand=YES) + + ## base theme + f2 = ttk.Frame(self.configure_frame, padding=(5, 2)) + ttk.Label(f2, text="base theme", width=12).pack(side=LEFT) + self.base_theme = ttk.Combobox(f2, values=self.style.theme_names()) + self.base_theme.insert(END, "litera") + self.base_theme.pack(side=LEFT, fill=X, expand=YES) + f2.pack(fill=X, expand=YES, pady=(0, 15)) + self.base_theme.bind("<>", self.change_base_theme) + + ## color options + self.color_rows = [] + for color in self.style.colors.label_iter(): + row = ColorRow(self.configure_frame, color, self.style) + self.color_rows.append(row) + row.pack(fill=BOTH, expand=YES) + row.bind("<>", self.create_temp_theme) + + def create_temp_theme(self, *_): + """Creates a temp theme using the current configure settings and + changes the theme in tkinter to that new theme. + """ + themename = "temp_" + str(uuid4()).replace("-", "")[:10] + colors = {} + for row in self.color_rows: + colors[row.label["text"]] = row.color_value + definition = ThemeDefinition(themename, colors, self.style.theme.type) + self.style.register_theme(definition) + self.style.theme_use(themename) + self.update_color_patches() + + def change_base_theme(self, *_): + """Sets the initial colors used in the color configuration""" + themename = self.base_theme.get() + self.style.theme_use(themename) + self.update_color_patches() + + def update_color_patches(self): + """Updates the color patches next to the color code entry.""" + for row in self.color_rows: + row.color_value = self.style.colors.get(row.label["text"]) + row.update_patch_color() + + def export_user_themes(self): + """Export user themes saved in the user.py file""" + inpath = Path(user.__file__) + outpath = asksaveasfilename( + initialdir="/", + initialfile="user.py", + filetypes=[("python", "*.py")], + ) + if outpath: + shutil.copyfile(inpath, outpath) + Messagebox.ok( + parent=self, + title="Export", + message="User themes have been exported.", + ) + + def import_user_themes(self): + """Import user themes into the user.py file. Any existing data + in the user.py file will be overwritten.""" + outpath = Path(user.__file__) + inpath = askopenfilename( + initialdir="/", + initialfile="user.py", + filetypes=[("python", "*.py")], + ) + confirm = Messagebox.okcancel( + title="Import", + message="This import will overwrite the existing user themes. Ok to import?", + ) + if confirm == "OK" and inpath: + shutil.copyfile(inpath, outpath) + Messagebox.ok( + parent=self, + title="Export", + message="User themes have been imported.", + ) + + def save_theme(self): + """Save the current settings as a new theme. Warn using if + saving will overwrite existing theme.""" + name = self.theme_name.get().lower().replace(" ", "") + + if name in user.USER_THEMES: + result = Messagebox.okcancel( + title="Save Theme", + alert=True, + message=f"Overwrite existing theme {name}?", + ) + if result == "Cancel": + return + + colors = {} + for row in self.color_rows: + colors[row.label["text"]] = row.color_value + + theme = {name: {"type": self.style.theme.type, "colors": colors}} + user.USER_THEMES.update(theme) + standard.STANDARD_THEMES[name] = theme[name] + + # save user themes to file + formatted = json.dumps(user.USER_THEMES, indent=4) + out = 'USER_THEMES = ' + formatted + filepath = user.__file__ + with open(filepath, 'w', encoding='utf-8') as f: + f.write(out) + + definition = ThemeDefinition(name, colors, self.style.theme.type) + self.style.register_theme(definition) + self.style.theme_use(name) + new_themes = [] + for themename in self.style.theme_names(): + if not themename.startswith("temp"): + new_themes.append(themename) + self.base_theme.configure(values=new_themes) + Messagebox.ok(f"The theme {name} has been created", "Save theme") + + +class ColorRow(ttk.Frame): + def __init__(self, master, color, style): + super().__init__(master, padding=(5, 2)) + self.colorname = color + self.style = style + + self.label = ttk.Label(self, text=color, width=12) + self.label.pack(side=LEFT) + self.patch = Frame( + master=self, background=self.style.colors.get(color), width=15 + ) + self.patch.pack(side=LEFT, fill=BOTH, padx=2) + self.entry = ttk.Entry(self, width=12) + self.entry.pack(side=LEFT, fill=X, expand=YES) + self.entry.bind("", self.enter_color) + self.color_picker = ttk.Button( + master=self, + text="...", + bootstyle=SECONDARY, + command=self.pick_color, + ) + self.color_picker.pack(side=LEFT, padx=2) + + # set initial color value and patch color + self.color_value = self.style.colors.get(color) + self.update_patch_color() + + def pick_color(self): + """Callback for when a color is selected from the color chooser""" + color = askcolor(color=self.color_value) + if color[1]: + self.color_value = color[1] + self.update_patch_color() + self.event_generate("<>") + + def enter_color(self, *_): + """Callback for when a color is typed into the entry""" + try: + self.color_value = self.entry.get().lower() + self.update_patch_color() + except: + self.color_value = self.style.colors.get(self.label["text"]) + self.update_patch_color() + self.event_generate("<>") + + def update_patch_color(self): + """Update the color patch frame with the color value stored in + the entry widget.""" + self.entry.delete(0, END) + self.entry.insert(END, self.color_value) + self.patch.configure(background=self.color_value) + + +class DemoWidgets(ttk.Frame): + """Builds a frame containing an example of most ttkbootstrap widgets + with various styles and states applied. + """ + + ZEN = """Beautiful is better than ugly. + Explicit is better than implicit. + Simple is better than complex. + Complex is better than complicated. + Flat is better than nested. + Sparse is better than dense. + Readability counts. + Special cases aren't special enough to break the rules. + Although practicality beats purity. + Errors should never pass silently. + Unless explicitly silenced. + In the face of ambiguity, refuse the temptation to guess. + There should be one-- and preferably only one --obvious way to do it. + Although that way may not be obvious at first unless you're Dutch. + Now is better than never. + Although never is often better than *right* now. + If the implementation is hard to explain, it's a bad idea. + If the implementation is easy to explain, it may be a good idea. + Namespaces are one honking great idea -- let's do more of those!""" + + def __init__(self, master, style): + super().__init__(master) + + self.style: ttk.Style = style + self.create_left_frame() + self.create_right_frame() + + def create_right_frame(self): + container = ttk.Frame(self) + container.pack(side=RIGHT, fill=BOTH, expand=YES, padx=5) + + # demonstrates various button styles + btn_group = ttk.Labelframe( + master=container, text="Buttons", padding=(10, 5) + ) + btn_group.pack(fill=X) + + menu = ttk.Menu(self) + for i, t in enumerate(self.style.theme_names()): + menu.add_radiobutton(label=t, value=i) + + default = ttk.Button(master=btn_group, text="solid button") + default.pack(fill=X, pady=5) + default.focus_set() + + mb = ttk.Menubutton( + master=btn_group, + text="solid menubutton", + bootstyle=SECONDARY, + menu=menu, + ) + mb.pack(fill=X, pady=5) + + cb = ttk.Checkbutton( + master=btn_group, + text="solid toolbutton", + bootstyle=(SUCCESS, TOOLBUTTON), + ) + cb.invoke() + cb.pack(fill=X, pady=5) + + ob = ttk.Button( + master=btn_group, text="outline button", bootstyle=(INFO, OUTLINE) + ) + ob.pack(fill=X, pady=5) + + mb = ttk.Menubutton( + master=btn_group, + text="outline menubutton", + bootstyle=(WARNING, OUTLINE), + menu=menu, + ) + mb.pack(fill=X, pady=5) + + cb = ttk.Checkbutton( + master=btn_group, + text="outline toolbutton", + bootstyle="success-outline-toolbutton", + ) + cb.pack(fill=X, pady=5) + + lb = ttk.Button(master=btn_group, text="link button", bootstyle=LINK) + lb.pack(fill=X, pady=5) + + cb1 = ttk.Checkbutton( + master=btn_group, + text="rounded toggle", + bootstyle=(SUCCESS, ROUND, TOGGLE), + ) + cb1.invoke() + cb1.pack(fill=X, pady=5) + + cb2 = ttk.Checkbutton( + master=btn_group, text="squared toggle", bootstyle=(SQUARE, TOGGLE) + ) + cb2.pack(fill=X, pady=5) + cb2.invoke() + + input_group = ttk.Labelframe( + master=container, text="Other input widgets", padding=10 + ) + input_group.pack(fill=BOTH, pady=(10, 5), expand=YES) + entry = ttk.Entry(input_group) + entry.pack(fill=X) + entry.insert(END, "entry widget") + + password = ttk.Entry(master=input_group, show="•") + password.pack(fill=X, pady=5) + password.insert(END, "password") + + spinbox = ttk.Spinbox(master=input_group, from_=0, to=100) + spinbox.pack(fill=X) + spinbox.set(45) + + cbo = ttk.Combobox( + master=input_group, + text=self.style.theme.name, + values=self.style.theme_names(), + ) + cbo.pack(fill=X, pady=5) + cbo.current(self.style.theme_names().index(self.style.theme.name)) + + de = ttk.DateEntry(input_group) + de.pack(fill=X) + + def create_left_frame(self): + """Create all the left frame widgets""" + container = ttk.Frame(self) + container.pack(side=LEFT, fill=BOTH, expand=YES, padx=5) + + # demonstrates all color options inside a label + color_group = ttk.Labelframe( + master=container, text="Theme color options", padding=10 + ) + color_group.pack(fill=X, side=TOP) + for color in self.style.colors: + cb = ttk.Button(color_group, text=color, bootstyle=color) + cb.pack(side=LEFT, expand=YES, padx=5, fill=X) + + # demonstrates all radiobutton widgets active and disabled + cr_group = ttk.Labelframe( + master=container, text="Checkbuttons & radiobuttons", padding=10 + ) + cr_group.pack(fill=X, pady=10, side=TOP) + cr1 = ttk.Checkbutton(cr_group, text="selected") + cr1.pack(side=LEFT, expand=YES, padx=5) + cr1.invoke() + cr2 = ttk.Checkbutton(cr_group, text="deselected") + cr2.pack(side=LEFT, expand=YES, padx=5) + cr3 = ttk.Checkbutton(cr_group, text="disabled", state=DISABLED) + cr3.pack(side=LEFT, expand=YES, padx=5) + cr4 = ttk.Radiobutton(cr_group, text="selected", value=1) + cr4.pack(side=LEFT, expand=YES, padx=5) + cr4.invoke() + cr5 = ttk.Radiobutton(cr_group, text="deselected", value=2) + cr5.pack(side=LEFT, expand=YES, padx=5) + cr6 = ttk.Radiobutton( + cr_group, text="disabled", value=3, state=DISABLED + ) + cr6.pack(side=LEFT, expand=YES, padx=5) + + # demonstrates the treeview and notebook widgets + ttframe = ttk.Frame(container) + ttframe.pack(pady=5, fill=X, side=TOP) + table_data = [ + ("South Island, New Zealand", 1), + ("Paris", 2), + ("Bora Bora", 3), + ("Maui", 4), + ("Tahiti", 5), + ] + tv = ttk.Treeview( + master=ttframe, columns=[0, 1], show="headings", height=5 + ) + for row in table_data: + tv.insert("", END, values=row) + tv.selection_set("I001") + tv.heading(0, text="City") + tv.heading(1, text="Rank") + tv.column(0, width=300) + tv.column(1, width=70, anchor=CENTER) + tv.pack(side=LEFT, anchor=NE, fill=X) + + nb = ttk.Notebook(ttframe) + nb.pack(side=LEFT, padx=(10, 0), expand=YES, fill=BOTH) + nb_text = ( + "This is a notebook tab.\nYou can put any widget you want here." + ) + nb.add(ttk.Label(nb, text=nb_text), text="Tab 1", sticky=NW) + nb.add( + child=ttk.Label(nb, text="A notebook tab."), + text="Tab 2", + sticky=NW, + ) + nb.add(ttk.Frame(nb), text="Tab 3") + nb.add(ttk.Frame(nb), text="Tab 4") + nb.add(ttk.Frame(nb), text="Tab 5") + + # text widget + txt = ttk.Text(master=container, height=5, width=50, wrap="none") + txt.insert(END, DemoWidgets.ZEN) + txt.pack(side=LEFT, anchor=NW, pady=5, fill=BOTH, expand=YES) + + # demonstrates scale, progressbar, and meter, and scrollbar widgets + lframe_inner = ttk.Frame(container) + lframe_inner.pack(fill=BOTH, expand=YES, padx=10) + scale = ttk.Scale( + master=lframe_inner, orient=HORIZONTAL, value=75, from_=100, to=0 + ) + scale.pack(fill=X, pady=5, expand=YES) + + ttk.Progressbar( + master=lframe_inner, + orient=HORIZONTAL, + value=50, + ).pack(fill=X, pady=5, expand=YES) + + ttk.Progressbar( + master=lframe_inner, + orient=HORIZONTAL, + value=75, + bootstyle="success-striped", + ).pack(fill=X, pady=5, expand=YES) + + m = ttk.Meter( + master=lframe_inner, + metersize=150, + amountused=45, + subtext="meter widget", + bootstyle="info", + interactive=True, + ) + m.pack(pady=10) + + sb = ttk.Scrollbar( + master=lframe_inner, + orient=HORIZONTAL, + ) + sb.set(0.1, 0.9) + sb.pack(fill=X, pady=5, expand=YES) + + sb = ttk.Scrollbar( + master=lframe_inner, orient=HORIZONTAL, bootstyle="danger-round" + ) + sb.set(0.1, 0.9) + sb.pack(fill=X, pady=5, expand=YES) + + +if __name__ == "__main__": + + creator = ThemeCreator() + creator.mainloop() diff --git a/pepapplication/Install-peppermint.desktop b/pepapplication/Install-peppermint.desktop old mode 100644 new mode 100755 index ec16e9512..a06c1ec9e --- a/pepapplication/Install-peppermint.desktop +++ b/pepapplication/Install-peppermint.desktop @@ -2,6 +2,15 @@ Version=1.0 Type=Application Name=Install Peppermint +Name[bg]=Инсталиране на Peppermint +Name[es]=Instale Peppermint +Name[fr]= Installer Peppermint +Name[hu]=Telepítse a Peppermint +Name[it]=Installare Peppermint +Name[ja]=インストール Peppermint +Name[pt]=Instalar Peppermint +Name[pt_BR]=Instalar Peppermint +Name[ru]=Установить Peppermint Exec=install-peppermint Icon=/usr/share/pixmaps/install-debian.png Terminal=false @@ -9,4 +18,4 @@ Categories=Settings Comment=Calamares — Installer for Peppermint Live Keywords=calamares;system;install;peppermint;installer StartupNotify=True -StartupWMClass=calamares +StartupWMClass=calamares \ No newline at end of file diff --git a/pepcal/calamares/branding/peppermint/branding.desc b/pepcal/calamares/branding/peppermint/branding.desc index 5ddd2e91f..6bfd14157 100644 --- a/pepcal/calamares/branding/peppermint/branding.desc +++ b/pepcal/calamares/branding/peppermint/branding.desc @@ -14,9 +14,9 @@ strings: versionedName: Peppermint shortVersionedName: Peppermint bootloaderEntryName: Peppermint - productUrl: https://www.peppermintos.com - supportUrl: https://forum.peppermintos.com - releaseNotesUrl: https://www.peppermintos.com + productUrl: https://peppermintos.com + supportUrl: https://sourceforge.net/p/peppermintos/pepos/ + releaseNotesUrl: https://peppermintos.com images: productLogo: "pep-logo.png" @@ -28,6 +28,4 @@ slideshow: "show.qml" style: sidebarBackground: "#333333" sidebarText: "#FFFFFF" - sidebarTextSelect: "#F62817" - - + sidebarTextSelect: "#F62817" \ No newline at end of file diff --git a/pepcal/calamares/modules/netinstall-packages.conf b/pepcal/calamares/modules/netinstall-packages.conf new file mode 100644 index 000000000..208eb4816 --- /dev/null +++ b/pepcal/calamares/modules/netinstall-packages.conf @@ -0,0 +1,56 @@ +--- +# This is the URL that is retrieved to get the netinstall groups-and-packages +# data (which should be in the format described in netinstall.yaml), e.g.: +# groupsUrl: http://example.org/netinstall.php +# or it can be a locally installed file: +# groupsUrl: file:///usr/share/calamares/netinstall.yaml +# +# Note that the contents of the groups file is the **important** +# part of the configuration of this module. It specifies what +# the user may select and what commands are to be run. +# +# The format of the groups file is documented in `README.md`. +# +# As a special case, setting *groupsUrl* to the literal string +# `local` means that the data is obtained from **this** config +# file, under the key *groups*. +# +groupsUrl: file:///etc/calamares/modules/netinstall-packages.yaml + +# If the installation can proceed without netinstall (e.g. the Live CD +# can create a working installed system, but netinstall is preferred +# to bring it up-to-date or extend functionality) leave this set to +# false (the default). If set to true, the netinstall data is required. +# +# This only has an effect if the netinstall data cannot be retrieved, +# or is corrupt: having "required" set, means the install cannot proceed. +required: false + +# To support multiple instances of this module, +# some strings are configurable and translatable here. +# - *sidebar* This is the name of the module in the progress-tree / sidebar +# in Calamares. +# - *title* This is displayed above the list of packages. +# If no *sidebar* values are provided, defaults to "Package selection" +# and existing translations. If no *title* values are provided, no string +# is displayed. +# +# The following strings are already known to Calamares and can be +# listed here in *untranslated* form (e.g. as value of *sidebar*) +# without bothering with the translations: they are picked up from +# the regular translation framework: +# - "Package selection" +# - "Office software" +# - "Office package" +# - "Browser software" +# - "Browser package" +# - "Web browser" +label: + sidebar: "Packages" + sidebar[nl]: "Package selection" + sidebar[pt]: "Seleção de pacotes" + sidebar[ja]: "パッケージの選択" + title: "Packages" + title[nl]: "Package selection" + title[pt]: "Seleção de pacotes" + title[ja]: "パッケージの選択" diff --git a/pepcal/calamares/modules/packages.conf b/pepcal/calamares/modules/packages.conf index 1a15aecf9..599000e74 100644 --- a/pepcal/calamares/modules/packages.conf +++ b/pepcal/calamares/modules/packages.conf @@ -3,22 +3,20 @@ backend: apt operations: - remove: # We need to keep this as refracta uses these to build he live CD's -# - 'live-boot' -# - 'live-boot-doc' -# - 'live-config' -# - 'live-config-doc' -# - 'live-config-systemd' -# - 'live-config-systemd' -# - 'live-tools' -# - 'live-task-localisation' -# - 'live-task-recommended' + - 'live-boot' + - 'live-boot-doc' + - 'live-config' + - 'live-config-doc' + - 'live-config-systemd' + - 'live-config-systemd' + - 'live-tools' + - 'live-task-localisation' + - 'live-task-recommended' #This one we don't need the users can decide thier own installer -# - 'calamares-settings-debian' -# - 'calamares' - + - 'calamares-settings-debian' + - 'calamares' # This section add any other software you want to remove. # - 'gparted' # - 'bleachbit' - 'termit' - - 'live-tools' diff --git a/pepcal/calamares/netinstall-packages b/pepcal/calamares/netinstall-packages new file mode 100644 index 000000000..2218c0fd7 --- /dev/null +++ b/pepcal/calamares/netinstall-packages @@ -0,0 +1,743 @@ +- name: " Developers Choice " + description: " A much smaller subset of packages than listed below" + - epiphany-browser + - falkon + - firefox-esr + - chromium + - konqueror + - luakit + - midori + - qutebrowser + - torbrowser-launcher + - transmission + - youtube-dl + - arandr + - atril + - dconf-editor + - gpicview + - mate-calc + - parole + - pmount + - flatpak + - gnome-software + - snapd +- immutable: true +- name: "Xfce4 Goodies selections" + description: "The full package or choice of Xfce4 Goodies Packages" + - name: "Xfce4 Goodies - Pack" + description: "A META package to install everything XFCE4 from Debian Stable repositories" + - xfce4-goodies + - name: "Xfce4 Goodies - Components" + description: "Individual applications to add to the packages already installed" + - xfce4-battery-plugin + - xfce4-clipman-plugin + - xfce4-cpufreq-plugin + - xfce4-cpugraph-plugin + - xfce4-datetime-plugin + - xfce4-dict + - xfce4-diskperf-plugin + - xfce4-fsguard-plugin + - xfce4-genmon-plugin + - xfce4-indicator-plugin + - xfce4-mailwatch-plugin + - xfce4-mpc-plugin + - xfce4-netload-plugin + - xfce4-notifyd + - xfce4-places-plugin + - xfce4-power-manager + - xfce4-screenshooter + - xfce4-sensors-plugin + - xfce4-smartbookmark-plugin + - xfce4-systemload-plugin + - xfce4-taskmanager + - xfce4-terminal + - xfce4-timer-plugin + - xfce4-verve-plugin + - xfce4-wavelan-plugin + - xfce4-weather-plugin + - xfce4-whiskermenu-plugin + - xfce4-xkb-plugin + - gigolo + - mousepad + - parole + - ristretto + - thunar-archive-plugin + - thunar-media-tags-plugin + - xfburn +- name: "Internet Applications" + description: "Web Browsers, E-Mail, Social Clients, DownLoaders and tools" + - name: "Web Browsers" + description: "A Collection Of Browsers for the internet or local LAN" + - name: "Chromium Web Browser" + description: "Googles Open Source web browser and content viewer" + - chromium + - name: "chromium-Language Pack" + description: "Language Pack For chromium" + - chromium-l10n + - elinks + - epiphany-browser + - falkon + - name: "Firefox-ESR" + description: "Extended Service Release of FireFox from Debian Stable" + - firefox-esr + - name: "Firefox-esr Language Packs" + description: "Language Packs For Firefox-esr" + - firefox-esr-l10n-ach + - firefox-esr-l10n-af + - firefox-esr-l10n-all + - firefox-esr-l10n-an + - firefox-esr-l10n-ar + - firefox-esr-l10n-ast + - firefox-esr-l10n-az + - firefox-esr-l10n-be + - firefox-esr-l10n-bg + - firefox-esr-l10n-bn + - firefox-esr-l10n-br + - firefox-esr-l10n-bs + - firefox-esr-l10n-ca + - firefox-esr-l10n-cak + - firefox-esr-l10n-cs + - firefox-esr-l10n-cy + - firefox-esr-l10n-da + - firefox-esr-l10n-de + - firefox-esr-l10n-dsb + - firefox-esr-l10n-el + - firefox-esr-l10n-en-ca + - firefox-esr-l10n-en-gb + - firefox-esr-l10n-eo + - firefox-esr-l10n-es-ar + - firefox-esr-l10n-es-cl + - firefox-esr-l10n-es-es + - firefox-esr-l10n-es-mx + - firefox-esr-l10n-et + - firefox-esr-l10n-eu + - firefox-esr-l10n-fa + - firefox-esr-l10n-ff + - firefox-esr-l10n-fi + - firefox-esr-l10n-fr + - firefox-esr-l10n-fy-nl + - firefox-esr-l10n-ga-ie + - firefox-esr-l10n-gd + - firefox-esr-l10n-gl + - firefox-esr-l10n-gn + - firefox-esr-l10n-gu-in + - firefox-esr-l10n-hr + - firefox-esr-l10n-hsb + - firefox-esr-l10n-hu + - firefox-esr-l10n-hy-am + - firefox-esr-l10n-ia + - firefox-esr-l10n-id + - firefox-esr-l10n-is + - firefox-esr-l10n-it + - firefox-esr-l10n-ja + - firefox-esr-l10n-ka + - firefox-esr-l10n-kab + - firefox-esr-l10n-kk + - firefox-esr-l10n-km + - firefox-esr-l10n-kn + - firefox-esr-l10n-ko + - firefox-esr-l10n-ia + - firefox-esr-l10n-id + - firefox-esr-l10n-is + - firefox-esr-l10n-it + - firefox-esr-l10n-ja + - firefox-esr-l10n-ka + - firefox-esr-l10n-kab + - firefox-esr-l10n-kk + - firefox-esr-l10n-km + - firefox-esr-l10n-kn + - firefox-esr-l10n-ko + - firefox-esr-l10n-lt + - firefox-esr-l10n-lv + - firefox-esr-l10n-mk + - firefox-esr-l10n-mr + - firefox-esr-l10n-ms + - firefox-esr-l10n-my + - firefox-esr-l10n-nb-no + - firefox-esr-l10n-ne-np + - firefox-esr-l10n-nl + - firefox-esr-l10n-nn-no + - firefox-esr-l10n-oc + - firefox-esr-l10n-pa-in + - firefox-esr-l10n-pl + - firefox-esr-l10n-pt-br + - firefox-esr-l10n-pt-pt + - firefox-esr-l10n-rm + - firefox-esr-l10n-ro + - firefox-esr-l10n-ru + - firefox-esr-l10n-si + - firefox-esr-l10n-sk + - firefox-esr-l10n-sl + - firefox-esr-l10n-son + - firefox-esr-l10n-sq + - firefox-esr-l10n-sr + - firefox-esr-l10n-sv-se + - firefox-esr-l10n-ta + - firefox-esr-l10n-te + - firefox-esr-l10n-th + - firefox-esr-l10n-tr + - firefox-esr-l10n-uk + - firefox-esr-l10n-ur + - firefox-esr-l10n-uz + - firefox-esr-l10n-vi + - firefox-esr-l10n-xh + - firefox-esr-l10n-zh-cn + - firefox-esr-l10n-zh-tw + - links + - links2 + - midori + - torbrowser-launcher + - name: "E-mail Clients" + description: "Various Email Clients" + - alpine + - claws-mail + - evolution + - geary + - kmail + - name: "Thunderbird E-Mail client" + description: "A cross platform standalone mail/news reader supporting POP/POP3 and IMAP protocols" + - thunderbird + - name: "Thunderbird Language Packs" + description: "Language Packs and text direction converter" + - thunderbird-bidiui + - thunderbird-l10n-all + - thunderbird-l10n-ar + - thunderbird-l10n-ast + - thunderbird-l10n-be + - thunderbird-l10n-bg + - thunderbird-l10n-br + - thunderbird-l10n-ca + - thunderbird-l10n-cs + - thunderbird-l10n-cy + - thunderbird-l10n-da + - thunderbird-l10n-de + - thunderbird-l10n-dsb + - thunderbird-l10n-el + - thunderbird-l10n-en-gb + - thunderbird-l10n-es-ar + - thunderbird-l10n-es-es + - thunderbird-l10n-et + - thunderbird-l10n-eu + - thunderbird-l10n-fi + - thunderbird-l10n-fr + - thunderbird-l10n-fy-nl + - thunderbird-l10n-ga-ie + - thunderbird-l10n-gd + - thunderbird-l10n-gl + - thunderbird-l10n-he + - thunderbird-bidiui + - thunderbird-l10n-hr + - thunderbird-l10n-hsb + - thunderbird-l10n-hu + - thunderbird-l10n-hy-am + - thunderbird-l10n-id + - thunderbird-l10n-is + - thunderbird-l10n-it + - thunderbird-l10n-ja + - thunderbird-l10n-kab + - thunderbird-l10n-kk + - thunderbird-l10n-ko + - thunderbird-l10n-lt + - thunderbird-l10n-ms + - thunderbird-l10n-nl + - thunderbird-l10n-pl + - thunderbird-l10n-pt-br + - thunderbird-l10n-pt-pt + - thunderbird-l10n-rm + - thunderbird-l10n-ro + - thunderbird-l10n-ru + - thunderbird-l10n-si + - thunderbird-l10n-sq + - thunderbird-l10n-sr + - thunderbird-l10n-sv-se + - thunderbird-l10n-tr + - thunderbird-l10n-uk + - thunderbird-l10n-vi + - thunderbird-l10n-zh-tw + - name: "Thunderbird Add-Ons" + description: "Additional desktop enhancements for Thundebird Mail" + - birdtray + - lightning + - thunderbird-bidiui + - name: "Social Clients / Chat Software" + description: "Social Video & Chat Clients" + - finch + - hexchat + - hexchat-plugins + - jami + - mumble + - pidgin + - psi + - tkabber + - name: "Download Managers" + description: "Various Download & Torrent Managers" + - deluge + - filezilla + - ktorrent + - qbittorrent + - transmission-gtk + - name: "Networking Tools" + description: "Various Network and Networking tools and utilities" + - ufw + - gufw + - iptraf-ng + - samba + - wireshark +- name: "Office Suites" + description: "Select from the suite or components, plus add-ons" + - name: "LibreOffice - Suites" + description: "Selection of Suites, components, Language Packs and add-ons" + - libreoffice + - libreoffice-gnome + - libreoffice-gtk3 + - name: "LibreOffice - Comopnents" + description: "Individual packages of utilities from the LibreOffice Suite" + - name: "LibreOffice-Base" + description: "Component used to connect to and utilize DataBase connections" + - libreoffice-base + - libreoffice-report-builder + - libreoffice-calc + - libreoffice-draw + - libreoffice-impress + - libreoffice-math + - libreoffice-writer + - name: "LibreOffice - Language Packs" + description: "Language Packs For LibreOffice" + - libreoffice-l10n-af + - libreoffice-l10n-am + - libreoffice-l10n-ar + - libreoffice-l10n-as + - libreoffice-l10n-ast + - libreoffice-l10n-be + - libreoffice-l10n-bg + - libreoffice-l10n-bn + - libreoffice-l10n-br + - libreoffice-l10n-bs + - libreoffice-l10n-ca + - libreoffice-l10n-cs + - libreoffice-l10n-cy + - libreoffice-l10n-da + - libreoffice-l10n-de + - libreoffice-l10n-dz + - libreoffice-l10n-el + - libreoffice-l10n-en-gb + - libreoffice-l10n-en-za + - libreoffice-l10n-eo + - libreoffice-l10n-es + - libreoffice-l10n-et + - libreoffice-l10n-eu + - libreoffice-l10n-fa + - libreoffice-l10n-fi + - libreoffice-l10n-fr + - libreoffice-l10n-ga + - libreoffice-l10n-gd + - libreoffice-l10n-gl + - libreoffice-l10n-gu + - libreoffice-l10n-gug + - libreoffice-l10n-he + - libreoffice-l10n-hi + - libreoffice-l10n-hr + - libreoffice-l10n-hu + - libreoffice-l10n-id + - libreoffice-l10n-in + - libreoffice-l10n-is + - libreoffice-l10n-it + - libreoffice-l10n-ja + - libreoffice-l10n-ka + - libreoffice-l10n-kk + - libreoffice-l10n-km + - libreoffice-l10n-kmr + - libreoffice-l10n-kn + - libreoffice-l10n-ko + - libreoffice-l10n-lt + - libreoffice-l10n-lv + - libreoffice-l10n-mk + - libreoffice-l10n-mn + - libreoffice-l10n-mr + - libreoffice-l10n-nb + - libreoffice-l10n-ne + - libreoffice-l10n-nl + - libreoffice-l10n-nn + - libreoffice-l10n-nr + - libreoffice-l10n-nso + - libreoffice-l10n-oc + - libreoffice-l10n-om + - libreoffice-l10n-or + - libreoffice-l10n-pa-in + - libreoffice-l10n-pl + - libreoffice-l10n-pt + - libreoffice-l10n-pt-br + - libreoffice-l10n-ro + - libreoffice-l10n-ru + - libreoffice-l10n-rw + - libreoffice-l10n-si + - libreoffice-l10n-sk + - libreoffice-l10n-sl + - libreoffice-l10n-sr + - libreoffice-l10n-ss + - libreoffice-l10n-st + - libreoffice-l10n-sv + - libreoffice-l10n-szl + - libreoffice-l10n-ta + - libreoffice-l10n-te + - libreoffice-l10n-tg + - libreoffice-l10n-th + - libreoffice-l10n-tn + - libreoffice-l10n-tr + - libreoffice-l10n-ts + - libreoffice-l10n-ug + - libreoffice-l10n-uk + - libreoffice-l10n-uz + - libreoffice-l10n-ve + - libreoffice-l10n-vi + - libreoffice-l10n-xh + - libreoffice-l10n-za + - libreoffice-l10n-zh-cn + - libreoffice-l10n-zh-tw + - libreoffice-l10n-zu + - name: "LibreOffice - Add-Ons" + description: "Individual packages of apps and utilities for the LibreOffice Suite" + - hunspell + - name: Hunspell Dictionaries + description: "Spell checking and Dictionaries for various languages" + - hunspell-af + - hunspell-an + - hunspell-ar + - hunspell-be + - hunspell-bg + - hunspell-bn + - hunspell-bo + - hunspell-br + - hunspell-bs + - hunspell-ca + - hunspell-cs + - hunspell-da + - hunspell-de-at + - hunspell-de-at-frami + - hunspell-de-ch + - hunspell-de-ch-frami + - hunspell-de-de + - hunspell-de-de-frami + - hunspell-de-med + - hunspell-dz + - hunspell-el + - hunspell-en-au + - hunspell-en-ca + - hunspell-en-gb + - hunspell-en-med + - hunspell-en-us + - hunspell-en-za + - hunspell-es + - hunspell-eu + - hunspell-fr + - hunspell-fr-classical + - hunspell-fr-comprehensive + - hunspell-fr-revised + - hunspell-gd + - hunspell-gl + - hunspell-gl-es + - hunspell-gu + - hunspell-gug + - hunspell-he + - hunspell-hi + - hunspell-hr + - hunspell-hu + - hunspell-id + - hunspell-is + - hunspell-it + - hunspell-kk + - hunspell-kmr + - hunspell-ko + - hunspell-lo + - hunspell-lt + - hunspell-lv + - hunspell-ml + - hunspell-mn + - hunspell-ne + - hunspell-nl + - hunspell-no + - hunspell-oc + - hunspell-pl + - hunspell-pt-br + - hunspell-pt-pt + - hunspell-ro + - hunspell-ru + - hunspell-si + - hunspell-sk + - hunspell-sl + - hunspell-sr + - hunspell-sv + - hunspell-sv-se + - hunspell-sw + - hunspell-te + - hunspell-th + - hunspell-tools + - hunspell-tr + - hunspell-uk + - hunspell-uz + - hunspell-vi + - bluez + - cups + - cups-bsd + - ghostscript + - libpaper-utils + - libsane + - libxrender1 + - libgl1 + - openclipart-libreoffice + - pstoedit + - simple-scan + - unixodbc +- name: "Printing Support" + description: "Add Printer Support" + - cups + - cups-bsd + - name: "Foomatic Print Drivers" + description: "Foomatic based Printer Drivers" + - foomatic-db + - foomatic-db-engine + - foomatic-filters + - foomatic-filters-beh + - foomatic-db-compressed-ppds + - openprinting-ppds + - name: "Brother Printer" + description: "Brother based Printer Drivers" + - printer-driver-brlaser + - printer-driver-ptouch + - name: "Canon LBP laser printers" + description: "Canon LBP laser printers Drivers" + - printer-driver-cjet + - name: "Epson Utilities" + description: "Epson based Printer Drivers" + - escputil + - ink + - mtink + - printer-driver-escpr + - sane-airscan + - name: "Fuji Xerox printers" + description: "Fuji Xerox printers Drivers" + - printer-driver-fujixerox + - name: "HP Printer Support" + description: "Packages and drivers for HP Printers and Printer/Scanner Combos" + - name: "HP Color LaserJet 35xx/36xx" + description: "HP Color LaserJet 35xx/36xx Drivers" + - printer-driver-pxljr + - name: "HP-GDI printers" + description: "HP-GDI printers Drivers" + - printer-driver-pnm2ppa + - name: "HP Printer/Scanner" + description: "Install HP Printer/Scanner" + - hplip + - hplip-gui + - xsane + - name: "Kodak ESP AiO Color" + description: " Kodak ESP AiO color inkjet Series Drivers " + - printer-driver-c2esp + - name: "Konica/Minolta PagePro" + description: "Konica/Minolta PagePro 1[234]xxW Drivers" + - printer-driver-min12xxw + - name: "Lexmark 2050 Color Jetprinter " + description: "Lexmark 2050 Color Jetprinter Drivers" + - printer-driver-c2050 + - name: "Minolta magicolor 2300W/2400W color laser" + description: "Minolta magicolor 2300W/2400W color laser Drivers" + - printer-driver-m2300w + - name: "OKI Data printers" + description: "OKI Data printers Drivers" + - printer-driver-oki + - name: "Ricoh Aficio SP 1000s/SP 1100s" + description: "Ricoh Aficio SP 1000s/SP 1100s Drivers" + - printer-driver-sag-gdi + - name: "Samsung and Xerox SPL2 and SPLc laser printers" + description: "Samsung and Xerox SPL2 and SPLc laser printers Drivers" + - printer-driver-splix + - name: "ZjStream-based printers" + description: "ZjStream-based printers" + - printer-driver-foo2zjs + - simple-scan +- name: "A/V Players & Tools" + description: "Wide Selection of A/V Players. Editors and Codecs" + - name: "A/V Codecs" + description: "Selection of Audio and Video Codecs" + - faac + - faad + - ffmpeg + - gstreamer1.0-plugins-good + - gstreamer1.0-plugins-ugly + - gstreamer1.0-plugins-bad + - gstreamer1.0-pulseaudio + - sox + - lame + - twolame + - w32codecs + - w64codecs + - name: "Audio Players" + description: "Selection of Audio Players" + - audacious + - audacious-plugins + - clementine + - elisa + - lollypop + - sayonara + - vlc + - name: "Audio Editors" + description: "Selection of Audio Editors" + - ardour + - audacity + - kwave + - lmms + - name: "Audio Converters" + description: "Few good Audio Converters" + - lame + - soundconverter + - name: "Other Audio Tools" + description: "Various Other Audio Tools" + - easytag + - picard + - rhythmbox + - tangerine + - name: "Video Players" + description: "Selection of Video Players" + - celluloid + - dragonplayer + - haruna + - mplayer-gui + - mpv + - parole + - smplayer + - vlc + - xine-ui + - name: "Video Editors" + description: "Selection of Video Capture & Editors" + - kazam + - kdenlive + - obs-studio + - openshot-qt + - pitivi + - shotcut + - simplescreenrecorder + - vokoscreen-ng + - name: "Video Converters" + description: "Selection of Video Converters" + - ffmpeg + - mkvtoolnix + - mkvtoolnix-gui + - mystiq + - name: "Other Video Tools" + description: "Various other Video Tools" + - cheese + - guvcview + - mediainfo-gui +- name: "Graphics Studio" + description: "Image creation and manipulation suites and applications" + - blender + - darktable + - digikam + - flameshot + - gimp + - krita + - imagemagick + - inkscape + - showfoto +- name: "Utilities" + description: "Various Useful GUI and CLI/TUI Utilities" + - name: "Archive Applications" + description: "Selection of Arching Utilities and Extractors" + - p7zip-full + - p7zip-rar + - rar + - unrar + - zip + - unzip + - xarchiver + - name: "Disk & USB Tools" + description: "Drive Manipulation Tools" + - brasero + - k3b + - gnome-disk-utility + - gnome-multi-writer + - gparted + - timeshift + - name: "FingerPrint Driver" + description: "FingerPrint Drivers" + - fprintd + - name: "Package Managers" + description: "Additional Package Managers" + - gnome-software + - gnome-software-plugin-flatpak + - gnome-software-plugin-snap + - name: "Password Managers" + description: "Securely Store & Manage Passwords" + - keepassxc + - lastpass-cli + - name: "Resource Monitors" + description: "HTOP, BTOP & Others" + - btop + - htop + - nvtop + - name: "System Applications" + description: "Selection of Useful and sometimes required applications" + - apt-config-auto-update + - aptitude + - gnome-firmware + - gnome-packagekit + - gvfs-backends + - lightdm-settings + - slick-greeter + - name: "System Utilities" + description: "Misc other System Tools" + - barrier + - caffeine + - solaar + - timeshift + - name: "Terminal Emulators" + description: "Extra Terminal Emulators" + - cool-retro-term + - gnome-terminal + - guake + - mate-terminal + - mlterm + - terminus + - terminator + - xfce4-terminal +- name: "Linux Driver Modules" + description: "A shortlist of avalaible useful drivers" + - name: "Processor Microcode" + description: "Select based on your CPU" + - amd64-microcode + - intel-microcode + - name: "Broadcom WiFi" + description: "Broadcom WiFi Drivers" + - b43-fwcutter + - broadcom-sta-common + - broadcom-sta-dkms + - broadcom-sta-source + - firmware-b43-installer + - firmware-b43legacy-installer + - firmware-bnx2 + - firmware-bnx2x + - firmware-brcm80211 +- name: "Nvidia Drivers and Support" + description: "Support apps and drivers for Nvidia hardware" + - name: "NVidia GPUs" + description: "Select Your NVidia GPU Drivers" + - nvidia-driver + - nvidia-legacy-390xx-driver + - name: "NVidia NVENC Suport" + description: "Install NVidia NVENC Suport" + - libnvidia-encode1 + - libnvidia-legacy-390xx-encode1 + - name: "Optimus Manager" + description: "Enable Intel/nVidia GPU Switching" + - primus + - primus-nvidia + - bbswitch-dkms + - bumblebee + - bumblebee-nvidia + - name: "Nvidia Installer Cleanup" + description: " * Use of Nvidia-Installers is prevented, with this package installed *" + - nvidia-installer-cleanup +- name: "Wine All in One" + description: "Windows Compatibility Layer" + - wine + - winetricks diff --git a/pepcal/calamares/settings.conf b/pepcal/calamares/settings.conf index eeeb7a339..ba57dd645 100644 --- a/pepcal/calamares/settings.conf +++ b/pepcal/calamares/settings.conf @@ -10,6 +10,13 @@ instances: #- id: packages # module: netinstall # config: netinstall-packages.conf +#- id: system +# module: netinstall +# config: netinstall-system.conf +#- id: pkgs +# module: netinstall +# config: netinstall-pkgs.conf + sequence: @@ -22,6 +29,7 @@ sequence: - locale - keyboard - partition +# - netinstall@packages - users - summary diff --git a/pepdeffileman/xfce4/helpers.rc b/pepdeffileman/xfce4/helpers.rc deleted file mode 100644 index 284e8493c..000000000 --- a/pepdeffileman/xfce4/helpers.rc +++ /dev/null @@ -1,10 +0,0 @@ -# -# Default helpers.rc for Xfce's Preferred Applications -# -# Copyright (c) 2005-2006 Benedikt Meurer -# - -WebBrowser=firefox-esr -MailReader=thunderbird -TerminalEmulator=debian-x-terminal-emulator -FileManager=thunar diff --git a/pepgrub/grub b/pepgrub/grub index f0e6cd4da..721039e40 100755 --- a/pepgrub/grub +++ b/pepgrub/grub @@ -14,6 +14,10 @@ GRUB_CMDLINE_LINUX="" # the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...) #GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef" +# Uncomment this to run os-prober so search for and add other OS +# installations to the grub boot menu +GRUB_DISABLE_OS_PROBER=false + # Uncomment to disable graphical terminal (grub-pc only) #GRUB_TERMINAL=console diff --git a/pephooks/normal/0520-removeapps.hook.chroot b/pephooks/normal/0520-removeapps.hook.chroot index 36b8db235..79f0fede3 100755 --- a/pephooks/normal/0520-removeapps.hook.chroot +++ b/pephooks/normal/0520-removeapps.hook.chroot @@ -6,7 +6,7 @@ # Remove software # apt remove -y firefox-esr # apt remove -y termit -apt --purge --yes autoremove gnome-keyring nvidia-tesla-470-alternative systemsettings +apt --purge --yes autoremove gnome-keyring nvidia-tesla-470-alternative systemsettings imagemagick diff --git a/pephooks/normal/0540-webinst.hook.chroot b/pephooks/normal/0540-webinst.hook.chroot index 2f7fcfde8..8d26bc049 100755 --- a/pephooks/normal/0540-webinst.hook.chroot +++ b/pephooks/normal/0540-webinst.hook.chroot @@ -2,7 +2,6 @@ #git is needed for the git repos apt install git --yes - #install pip3, needed for additional python modules apt install --yes python3-pip #install the PyQt5-QtSql for PepScope diff --git a/pephooks/normal/0560-calamares-packages.hook.chroot b/pephooks/normal/0560-calamares-packages.hook.chroot new file mode 100755 index 000000000..5546735d3 --- /dev/null +++ b/pephooks/normal/0560-calamares-packages.hook.chroot @@ -0,0 +1,10 @@ +#!/bin/bash + +#[ -e /usr/local/bin/MakePackageLists.sh ] || exit 0 + +#cd /etc/calamares + +#/usr/local/bin/MakePackageLists.sh + +#rm /usr/local/bin/MakePackageLists.sh + diff --git a/pephooks/normal/0600-OS-symlinks.hook.chroot b/pephooks/normal/0600-OS-symlinks.hook.chroot index 271c761c2..715c235ed 100755 --- a/pephooks/normal/0600-OS-symlinks.hook.chroot +++ b/pephooks/normal/0600-OS-symlinks.hook.chroot @@ -6,10 +6,10 @@ # Workaround for using snapd on debian. Thank You - @stevesveryown. [ ! -e /etc/skel/.local/share ] && mkdir -p /etc/skel/.local/share -[ ! -e /var/lib/snapd/desktop/applications ] && -mkdir -p /var/lib/snapd/desktop/applications && -chmod 777 /var/lib/snapd/desktop/applications -ln -s /var/lib/snapd/desktop/applications /etc/skel/.local/share/applications +#[ ! -e /var/lib/snapd/desktop/applications ] && +#mkdir -p /var/lib/snapd/desktop/applications && +#chmod 777 /var/lib/snapd/desktop/applications +#ln -s /var/lib/snapd/desktop/applications /etc/skel/.local/share/applications ln -s snap /usr/bin/snap-store # This fixes the 'Right-Click doesn't open terminal in nemo' issue. @@ -33,5 +33,5 @@ ln -s ../../usr/bin/vim.tiny /etc/alternatives/vim ln -s ../../usr/bin/busybox /etc/alternatives/vi # Put a .png at ~/.face from within /etc/skel -ln -s /usr/share/pixmaps/logo.png /etc/skel/.face +#ln -s /usr/share/pixmaps/logo.png /etc/skel/.face diff --git a/pephooks/normal/0610-set-permissions.hook.chroot b/pephooks/normal/0610-set-permissions.hook.chroot index 640ccfcad..c3fbbb792 100755 --- a/pephooks/normal/0610-set-permissions.hook.chroot +++ b/pephooks/normal/0610-set-permissions.hook.chroot @@ -28,4 +28,33 @@ chmod 777 /usr/share/backgrounds # Quick patch from https://www.zdnet.com/article/major-linux-policykit-security-vulnerability-uncovered-pwnkit/ #chmod 0755 /usr/bin/pkexec # Their patch didn't work "pkexec must be setuid root" +# Fix file permissions +chmod 644 -R /usr/share/fonts/pepconf +chmod 644 -R /usr/share/applications/gdebi.desktop +chmod 644 -R /usr/share/applications/Install-peppermint.desktop +chmod 644 -R /usr/share/applications/org.kde.kded5.desktop +chmod 644 -R /usr/share/applications/Pephub.desktop +chmod 644 -R /usr/share/applications/Welcome.desktop +chmod 644 -R /usr/share/pixmaps/* +chmod 644 -R /etc/calamares/branding/peppermint +chmod 644 -R /opt/* +chmod 777 -R /opt/pypep/dbpep +chmod 644 -R /usr/local/lib/python3.11/dist-packages/* +chmod 644 -R /etc/skel/* +chmod 644 -R /etc/skel/.local +chmod 644 -R /etc/skel/.config +chmod 644 /usr/share/peppermint +chmod 644 /usr/sbin/bootloader-config +chmod 644 /usr/sbin/sources-final +chmod 644 /usr/bin/install-peppermint +chmod 644 /usr/share/polkit-1/actions/org.freedesktop.pepkumo.policy +chmod 644 /usr/share/polkit-1/actions/org.freedesktop.peppackages.policy +chmod 644 /usr/share/polkit-1/actions/org.freedesktop.pepu.policy +chmod 644 /usr/share/polkit-1/actions/org.freedesktop.python3.policy +chmod 644 /usr/share/polkit-1/actions/org.freedesktop.ttkcreator.policy +chmod 644 /etc/skel/.bash_aliases + + + + diff --git a/pephooks/normal/0950-final-cleanup.hook.chroot b/pephooks/normal/0950-final-cleanup.hook.chroot index 1fce9ef3a..bce28ee3f 100755 --- a/pephooks/normal/0950-final-cleanup.hook.chroot +++ b/pephooks/normal/0950-final-cleanup.hook.chroot @@ -14,8 +14,6 @@ for i in \ /usr/bin/install-debian \ /usr/share/applications/install-debian.desktop \ /usr/share/applications/xfburn.desktop \ -/etc/xdg/xfce4/panel/default.xml \ -/etc/xdg/xfce4/panel/xfce4-clipman-actions.xml \ /root/.cache/pip \ do [ -e $i ] && @@ -28,3 +26,13 @@ for i in \ # Lowers the footprint in RAM by 200 MB at the small expense of added size to the ISO. update-icon-caches /usr/share/icons/* +### Setting --apt-recommends and --apt-suggests defaults to '0' +echo -e "# Changing these values to \"1\" may quickly fill up a small partition" > /etc/apt/apt.conf.d/99No-Recommends +echo -e "APT::Install-Recommends \"0\";\nAPT::Install-Suggests \"0\";" >> /etc/apt/apt.conf.d/99No-Recommends + +### Fixes the "Not installing grub for UEFI Secure Boot" in all versions , after the default was changed. +#sed s/keyutils/"keyutils --install-recommends"/ /usr/sbin/bootloader-config > /tmp/bootloader-config +echo -e "$(grep -A1 -B20 "Installing grub-efi (uefi)..." /usr/sbin/bootloader-config) --install-recommends" > /tmp/bootloader-config +echo -e "$(grep -A2 "else" /usr/sbin/bootloader-config) --install-recommends\nfi" >> /tmp/bootloader-config +chmod +x /tmp/bootloader-config && mv /tmp/bootloader-config /usr/sbin/bootloader-config + diff --git a/pepmenu/menus/applications-merged/user-xfce-accessories.menu b/pepmenu/menus/applications-merged/user-xfce-accessories.menu deleted file mode 100755 index 93191018a..000000000 --- a/pepmenu/menus/applications-merged/user-xfce-accessories.menu +++ /dev/null @@ -1,18 +0,0 @@ - - - - Applications - - xfce-accessories - xfce-accessories.directory - - xfce4-about.desktop - thunar-bulk-rename.desktop - mousepad.desktop - thunar.desktop - xfburn.desktop - xarchiver.desktop - - - diff --git a/pepmenu/menus/applications-merged/user-xfce-graphics.menu b/pepmenu/menus/applications-merged/user-xfce-graphics.menu deleted file mode 100755 index cad0a3ef7..000000000 --- a/pepmenu/menus/applications-merged/user-xfce-graphics.menu +++ /dev/null @@ -1,13 +0,0 @@ - - - - Applications - - xfce-graphics - xfce-graphics.directory - - xsane.desktop - - - diff --git a/pepmenu/menus/applications-merged/user-xfce-multimedia.menu b/pepmenu/menus/applications-merged/user-xfce-multimedia.menu deleted file mode 100755 index 1abe83227..000000000 --- a/pepmenu/menus/applications-merged/user-xfce-multimedia.menu +++ /dev/null @@ -1,14 +0,0 @@ - - - - Applications - - xfce-multimedia - xfce-multimedia.directory - - io.github.quodlibet.ExFalso.desktop - io.github.quodlibet.QuodLibet.desktop - - - diff --git a/pepmenu/menus/applications-merged/user-xfce-network.menu b/pepmenu/menus/applications-merged/user-xfce-network.menu deleted file mode 100755 index 8e12d5462..000000000 --- a/pepmenu/menus/applications-merged/user-xfce-network.menu +++ /dev/null @@ -1,14 +0,0 @@ - - - - Applications - - xfce-network - xfce-network.directory - - xfce4-web-browser.desktop - xfce4-mail-reader.desktop - - - diff --git a/pepmenu/menus/applications-merged/user-xfce-settings.menu b/pepmenu/menus/applications-merged/user-xfce-settings.menu deleted file mode 100755 index 98a5fe204..000000000 --- a/pepmenu/menus/applications-merged/user-xfce-settings.menu +++ /dev/null @@ -1,13 +0,0 @@ - - - - Applications - - xfce-settings - xfce-settings.directory - - thunar-settings.desktop - - - diff --git a/pepmenu/menus/applications-merged/user-xfce-system.menu b/pepmenu/menus/applications-merged/user-xfce-system.menu deleted file mode 100755 index 3faca15d6..000000000 --- a/pepmenu/menus/applications-merged/user-xfce-system.menu +++ /dev/null @@ -1,14 +0,0 @@ - - - - Applications - - xfce-system - xfce-system.directory - - debian-uxterm.desktop - debian-xterm.desktop - - - diff --git a/pepmenu/menus/xfce-applications.menu b/pepmenu/menus/xfce-applications.menu deleted file mode 100755 index 31f8a80e4..000000000 --- a/pepmenu/menus/xfce-applications.menu +++ /dev/null @@ -1,255 +0,0 @@ - - - Xfce - - - - - X-Xfce-Toplevel - - /etc/xdg/menus/xfce-applications.menu - - Settings - xfce-settings.directory - - Screensavers - xfce-screensavers.directory - - - - - - - - xfce-settings-manager.desktop - - org.bluesabre.Mugshot.desktop - xfce4-accessibility-settings.desktop - nm-connection-editor.desktop - xfce-ui-settings.desktop - arandr.desktop - xfce4-clipman-settings.desktop - xfce4-color-settings.desktop - xfce4-mime-settings.desktop - xfce-backdrop-settings.desktop - xfce-display-settings.desktop - thunar-settings.desktop - gufw.desktop - xfce-keyboard-settings.desktop - menulibre.desktop - xfce-mouse-settings.desktop - xfce4-notifyd-config.desktop - panel-preferences.desktop - xfce4-power-manager-settings.desktop - system-config-printer.desktop - thunar-volman-settings.desktop - Screensavers - xfce-session-settings.desktop - xfce4-settings-editor.desktop - synaptic.desktop - xfce-wm-settings.desktop - xfce-wmtweaks-settings.desktop - xfce-workspaces-settings.desktop - xfce4-terminal-settings.desktop - - - - - Accessories - xfce-accessories.directory - - - xfce4-about.desktop - xfce4-appfinder.desktop - org.gnome.FileRoller.desktop - thunar-bulk-rename.desktop - xfce4-clipman.desktop - org.gnome.DiskUtility.desktop - xfce4-file-manager.desktop - menulibre.desktop - mousepad.desktop - xfce4-run.desktop - xfce4-screenshooter.desktop - xfce4-sensors.desktop - xfce4-taskmanager.desktop - xfce4-terminal-emulator.desktop - thunar.desktop - xarchiver.desktop - xfburn.desktop - - - - - Development - xfce-development.directory - - - geany.desktop - yad-icon-browser.desktop - python3.9.desktop - - - - - Education - xfce-education.directory - - - - - - - Games - xfce-games.directory - - - - - - - Graphics - xfce-graphics.directory - - - ristretto.desktop - xsane.desktop - - - - - Network - xfce-network.directory - - - firefox-esr.desktop - xfce4-mail-reader.desktop - xfce4-web-browser.desktop - - - - - Multimedia - xfce-multimedia.directory - - - io.github.quodlibet.ExFalso.desktop - org.xfce.Parole.desktop - pavucontrol.desktop - io.github.quodlibet.QuodLibet.desktop - xfburn.desktop - - - - - Office - xfce-office.directory - - - atril.desktop - xfce4-dict.desktop - - - - - Other - xfce-other.directory - - gcr-prompter.desktop - - - nemo-autorun-software.desktop - - - panel-desktop-handler.desktop - - - gnome-disk-image-mounter.desktop - - - gnome-disk-image-writer.desktop - - - geoclue-demo-agent.desktop - - - ktelnetservice5.desktop - - - nm-applet.desktop - - - notification-daemon.desktop - - - gcr-viewer.desktop - - - - io.github.quodlibet.QuodLibet.desktop - io.github.quodlibet.ExFalso.desktop - xsane.desktop - xarchiver.desktop - xfburn.desktop - thunar.desktop - mousepad.desktop - thunar-bulk-rename.desktop - thunar-settings.desktop - gcr-prompter.desktop - nemo-autorun-software.desktop - panel-desktop-handler.desktop - gnome-disk-image-mounter.desktop - gnome-disk-image-writer.desktop - geoclue-demo-agent.desktop - ktelnetservice5.desktop - nm-applet.desktop - notification-daemon.desktop - gcr-viewer.desktop - - - - - System - xfce-system.directory - - - thunar-bulk-rename.desktop - ca.desrt.dconf-editor.desktop - install-debian.desktop - xfce4-session-logout.desktop - system-config-printer.desktop - xfce4-sensors.desktop - synaptic.desktop - xfce4-taskmanager.desktop - thunar.desktop - debian-uxterm.desktop - xfce4-terminal.desktop - debian-xterm.desktop - - - - - xfce4-run.desktop - - xfce4-terminal-emulator.desktop - xfce4-file-manager.desktop - xfce4-mail-reader.desktop - xfce4-web-browser.desktop - - Settings - - Accessories - Development - Education - Games - Graphics - Network - Multimedia - Office - Other - System - - xfce4-about.desktop - xfce4-session-logout.desktop - - diff --git a/pepmultimedia/peppermint.list.binary b/pepmultimedia/peppermint.list.binary index 43a34d7d5..8edb20ab3 100644 --- a/pepmultimedia/peppermint.list.binary +++ b/pepmultimedia/peppermint.list.binary @@ -1,3 +1,9 @@ -deb http://repo.peppermintos.com/packages peppermint main contrib non-free +#Main repos +#deb http://repo.peppermintos.com/packages peppermint main contrib non-free #deb-src http://repo.peppermintos.com/packages peppermint main contrib non-free +#Testing repos +deb http://repo.peppermintos.com/packages peptesting main contrib non-free +#deb-src http://repo.peppermintos.com/packages peptesting main contrib non-free + + diff --git a/pepmultimedia/peppermint.list.chroot b/pepmultimedia/peppermint.list.chroot index 43a34d7d5..8edb20ab3 100644 --- a/pepmultimedia/peppermint.list.chroot +++ b/pepmultimedia/peppermint.list.chroot @@ -1,3 +1,9 @@ -deb http://repo.peppermintos.com/packages peppermint main contrib non-free +#Main repos +#deb http://repo.peppermintos.com/packages peppermint main contrib non-free #deb-src http://repo.peppermintos.com/packages peppermint main contrib non-free +#Testing repos +deb http://repo.peppermintos.com/packages peptesting main contrib non-free +#deb-src http://repo.peppermintos.com/packages peptesting main contrib non-free + + diff --git a/pepplymouth/plymouthd.conf b/pepplymouth/plymouthd.conf new file mode 100644 index 000000000..2b5974c1d --- /dev/null +++ b/pepplymouth/plymouthd.conf @@ -0,0 +1,4 @@ +# Administrator customizations go in this file +[Daemon] +Theme=futureprototype +ShowDelay=0 diff --git a/pepstartpage/peppermint-old.png b/pepstartpage/peppermint-old.png deleted file mode 100644 index 50989ab60..000000000 Binary files a/pepstartpage/peppermint-old.png and /dev/null differ diff --git a/pepstartpage/pepst.css b/pepstartpage/pepst.css deleted file mode 100644 index 85f049b1e..000000000 --- a/pepstartpage/pepst.css +++ /dev/null @@ -1,64 +0,0 @@ -/*/ Set the body base/*/ -body { -background-color: #111111; -} -/*/Controle the search bar title style/*/ -p { -font-size: 30px; -font-weight: bold; -} -/*/ the base Grid container/*/ -.grid-container { - display: grid; - grid-template-columns: auto auto auto; - background-color: #111111; - padding: 10px; -} -/*/ Each block in the grid/*/ -.grid-item { - background-color: #111111; - border: #111111; - padding: 20px; - font-size: 20px; - font-family: Arial; - text-align: center; - color: white; -} -/*/Search button style/*/ -.button { - background-color: #770a0a; /* go */ - border: none; - color: white; - padding: 5px 20px; - text-align: center; - text-decoration: none; - display: inline-block; - font-size: 16px; - margin: 4px 2px; - transition-duration: 0.4s; - cursor: pointer; - border-radius: 4px; - box-sizing: border-box; - height:42px; -} -.btngo { - background-color: #770a0a; - color: white; - border: 1px solid white; -} -.btngo:hover { - background-color: #7b3737; - color: white; - border: 1px solid #770a0a; -} - -/*/Search box Style*/ -input[type=search], select { - width: 70%; - padding: 12px 20px; - margin: 8px 0; - display: inline-block; - border: 1px solid #ccc; - border-radius: 4px; - box-sizing: border-box; -} diff --git a/pepstartpage/start.html b/pepstartpage/start.html deleted file mode 100644 index a873d3c37..000000000 --- a/pepstartpage/start.html +++ /dev/null @@ -1,32 +0,0 @@ - - - - Peppermint OS 11 Start Page - - -
-
-
-
-
-
-
PepOS
-

-
- - -

- -
- -
-
-
-
-
- - - - - - diff --git a/pepwallpaper/Forest_Shadows.jpg b/pepwallpaper/Forest_Shadows.jpg new file mode 100644 index 000000000..f2e13ceab Binary files /dev/null and b/pepwallpaper/Forest_Shadows.jpg differ diff --git a/pepwallpaper/Hareshaw_Linn.jpg b/pepwallpaper/Hareshaw_Linn.jpg new file mode 100644 index 000000000..2fbc8b776 Binary files /dev/null and b/pepwallpaper/Hareshaw_Linn.jpg differ diff --git a/pepwallpaper/Peppermint_XI-noxi.png b/pepwallpaper/Peppermint_XI-noxi.png new file mode 100644 index 000000000..d3e639c96 Binary files /dev/null and b/pepwallpaper/Peppermint_XI-noxi.png differ diff --git a/pepwallpaper/Planet-Peppermint-2020.png b/pepwallpaper/Planet-Peppermint-2020.png new file mode 100644 index 000000000..260839715 Binary files /dev/null and b/pepwallpaper/Planet-Peppermint-2020.png differ