Stack of 10
| 1/10 | To-upstream: Symlink in /etc/mkosi-manifest+1 | |
| 2/10 | Enable greeters, starting after first-boot-complete.target+4 -2 | |
| 3/10 | To-upstream: fixes for KDE profile+12 | |
| 4/10 | To-upstream: general fixes and improvements+36 | |
| 5/10 | To-upstream: fixes for Fedora+12 | |
| 6/10 | To-upstream: fixes for desktop profile+1 | |
| 7/10 | Enable SELinux (WIP)+65 | |
| 8/10 | Miscellaneous tweaks that I don't plan to upstream+15 | |
| 9/10 | Custom readme for my personal fork+53 -158 | |
| 10/10 | My customized ParticleOS configuration+339 -3 |
patchstack/customized main
local customizations
Patch does not have a description.
24 files changed+339 -3
.gitignore | 2 | |
.ignore | 2 | |
README.md | 202 | |
makefile | 21 | |
mkosi.local.conf | 137 | |
systemd | 2 | |
+ mkosi.profiles/custom/mkosi.conf | 149 | |
- mkosi.profiles/custom/mkosi.postinst.d/wireshark.chroot | 4 | |
- mkosi.sandbox/etc/yum.repos.d/_copr:copr.fedorainfracloud.org:chenxiaolong:sbctl.repo | 10 | |
- mkosi.sandbox/etc/yum.repos.d/_copr:copr.fedorainfracloud.org:grahamwhiteuk:libfprint-tod.repo | 10 | |
- mkosi.sandbox/etc/yum.repos.d/hashicorp.repo | 13 | |
mkosi.extra/usr/lib/tmpfiles.d/etc.conf | 11 | |
mkosi.profiles/gnome/mkosi.conf.d/debian/mkosi.conf | 1 | |
- mkosi.extra/usr/lib/systemd/system-preset/10-jcgl.preset | 2 | |
+ mkosi.profiles/custom/mkosi.sandbox/etc/yum.repos.d/_copr:copr.fedorainfracloud.org:chenxiaolong:sbctl.repo | 10 | |
+ mkosi.profiles/custom/mkosi.sandbox/etc/yum.repos.d/_copr:copr.fedorainfracloud.org:grahamwhiteuk:libfprint-tod.repo | 10 | |
+ mkosi.profiles/custom/mkosi.sandbox/etc/yum.repos.d/hashicorp.repo | 13 | |
+ mkosi.profiles/gnome/mkosi.conf.d/debian/mkosi.conf.d/gnome-xsession.conf | 13 | |
+ mkosi.profiles/custom/mkosi.extra/usr/local/lib/systemd/system-preset/10-jcgl.preset | 3 | |
+ mkosi.profiles/custom/mkosi.extra/usr/local/lib/systemd/system/units_cur.service | 8 | |
+ mkosi.profiles/custom/mkosi.extra/usr/local/lib/systemd/system/units_cur.timer | 9 | |
+ mkosi.profiles/custom/mkosi.extra/usr/local/lib/systemd/user/autorestic.service | 7 | |
+ mkosi.profiles/custom/mkosi.extra/usr/local/lib/systemd/user/autorestic.timer | 9 | |
+ mkosi.profiles/custom/mkosi.extra/usr/local/lib/systemd/system/logrotate.service.d/10-jcgl.conf | 2 |
.gitignore-2
@@ -1,6 +1,4 @@ 1 1# SPDX-License-Identifier: LGPL-2.1-or-later 2 mkosi.local/ 3 mkosi.local.conf 4 2mkosi.output/ 5 3mkosi.cache/ 6 4mkosi.tools/1
.ignore+1 -1
@@ -1,1 +1,1 @@ 1 systemd/** 1/systemd/**1
README.md+44 -158
@@ -1,160 +1,46 @@ 1 1# ParticleOS 2 2 3 ParticleOS is a fully customizable immutable distribution implementing the 4 concepts described in 5 [Fitting Everything Together](https://0pointer.net/blog/fitting-everything-together.html). 6 7 Note that ParticleOS is still in development, and we don't provide any backwards 8 compatibility guarantees at all. 9 10 The crucial difference that makes ParticleOS unique compared to other immutable 11 distributions is that users build the ParticleOS image themselves and sign it 12 with their own keys instead of installing vendor signed images. This allows 13 configuring the image to your liking by having full control over which 14 distribution is used as the base and which packages are installed into the 15 image. 16 17 The ParticleOS image is built using [mkosi](https://github.com/systemd/mkosi). 18 You will need to install the current main branch of mkosi to build current 19 ParticleOS images. 20 21 First, configure the variant you'd like to build in `mkosi.local.conf`. For a 22 desktop system, you'll want the `desktop` profile and either the `gnome` or the 23 `kde` profile. 24 25 ```conf 26 [Distribution] 27 Distribution=arch 28 29 [Config] 30 Profiles=desktop,kde 31 ``` 32 33 To build the image, run `mkosi -B -f` from the ParticleOS repository. Currently 34 `arch`, `fedora` and `debian` are supported distributions. Implementing support for a 35 new distribution (that's already supported in mkosi) is as simple as writing the 36 necessary config files to install the required packages for that distribution. 37 38 To update the system after installation, you clone the ParticleOS repository 39 or your fork of it, make sure `mkosi.local.conf` is configured to your liking and 40 run `mkosi -B -ff sysupdate -- update --reboot` which will update the system using 41 `systemd-sysupdate` and then reboot. 42 43 ## Using the OBS profile to fetch a newer systemd 44 45 Sometimes ParticleOS adopts systemd features as soon as they get merged into 46 systemd without waiting for an official release. That's why we recommend 47 enabling the `obs` profile to enable the systemd repositories on OBS 48 (https://software.opensuse.org//download.html?project=system%3Asystemd&package=systemd) 49 containing systemd packages which are built every day from systemd's git main 50 branch. 51 52 To enable the `obs` profile, add the following to `mkosi.local.conf`: 53 54 ```conf 55 [Config] 56 Profiles=obs 57 ``` 58 59 ## Building systemd from source 60 61 As an alternative to using the `obs` profile, you can build systemd from source: 62 63 ```sh 64 git clone https://github.com/systemd/systemd 65 cd systemd 66 mkosi -f sandbox -- meson setup build 67 mkosi -f sandbox -- meson compile -C build 68 mkosi -t none -f 69 ``` 70 71 Then write the following to `mkosi.local.conf` in the ParticleOS repository to 72 use the artifacts from the systemd repository built by mkosi in ParticleOS: 73 74 ```conf 75 [Content] 76 VolatilePackageDirectories=../systemd/build/mkosi.builddir/<distribution>~<release>~<arch> 77 78 [Build] 79 ExtraSearchPaths=../systemd/build 80 ``` 81 82 Make sure the distribution and release in `mkosi.local.conf` are identical in the 83 systemd checkout and the particleos checkout. 84 85 To build a newer systemd, run `git pull` in the systemd repository followed by 86 `mkosi -f sandbox -- meson compile -C build` and `mkosi -t none`. 87 88 ## Signing keys 89 90 ParticleOS images are signed for Secure Boot with the user's keys. To generate a new key, 91 run `mkosi genkey`. The key must be stored safely, it will be required to sign updates. 92 93 The key can be stored in a smartcard. Then you have to set the key in `mkosi.local.conf`: 94 95 ``` 96 [Validation] 97 SecureBootKey=pkcs11:object=Private key 1;type=private 98 SecureBootKeySource=provider:pkcs11 99 SignExpectedPcrKey=pkcs11:object=Private key 1;type=private 100 SignExpectedPcrKeySource=provider:pkcs11 101 VerityKey=pkcs11:object=Private key 1;type=private 102 VerityKeySource=provider:pkcs11 103 ``` 104 105 ## Installation 106 107 Before installing ParticleOS, make sure that Secure Boot is in setup mode on the 108 target system. The Secure Boot mode can be configured in the UEFI firmware 109 interface of the target system. If there's an existing Linux installation on the 110 target system already, run `systemctl reboot --firmware-setup` to reboot into 111 the UEFI firmware interface. At the same time, make sure the UEFI firmware 112 interface is password protected so an attacker cannot just disable Secure Boot 113 again. 114 115 To install ParticleOS with a USB drive, first build the image on an existing 116 Linux system as described above. Then, burn it to the USB drive with 117 `mkosi burn /dev/<usb>`. Once burned to the USB drive, plug the USB drive into 118 the system onto which you'd like to install ParticleOS and boot into the USB 119 drive via the firmware. Then, boot into the "Installer" UKI profile. When you 120 end up in the root shell, run 121 `systemd-repart --dry-run=no --empty=force --defer-partitions=swap,root,home /dev/<drive>` 122 to install ParticleOS to the system's drive. Finally, reboot into the target 123 drive (not the USB) and the regular profile (not the installer one) to complete 124 the installation. 125 126 ## LUKS recovery key 127 128 systemd doesn't support adding a recovery key to a partition enrolled with a token 129 only (tpm/fido2). It is possible to use cryptenroll to add a recovery password 130 to the root partition: `cryptsetup luksAddKey --token-type systemd-tpm2 /dev/<id>` 131 132 ## Firmwares 133 134 Only firmwares that are dependencies of a kernel module are included, but some 135 modules don't declare their dependencies properly. Dependencies of a module can be 136 found with `modinfo`. If you experience missing firmwares, you should report 137 this to the module maintainer. `FirmwareInclude=` can be added in `mkosi.local.conf` 138 to include the firmware regardless of whether a module depends on it. 139 140 ## Configuring systemd-homed after installation 141 142 After installing ParticleOS and logging into your systemd-homed managed user, 143 run the following to configure systemd-homed for the best experience: 144 145 ```sh 146 homectl update \ 147 --auto-resize-mode=off \ 148 --disk-size=max \ 149 --luks-discard=on" 150 ``` 151 152 Disabling the auto resize mode avoids slow system boot and shutdown. Enabling 153 LUKS discard makes sure the home directory doesn't become inaccessible because 154 systemd-homed is unable to resize the home directory. 155 156 ## Default root password and user when booting in a virtual machine 157 158 If you boot ParticleOS in a virtual machine using `mkosi vm`, the root password 159 is automatically set to `particleos` and a default user `particleos` with password 160 `particleos` is created as well. 3[ParticleOS](https://github.com/systemd/particleos) is an extremely cool 4meta-distribution from the systemd project. It's my favorite thing in software 5since I discovered IPv6. Concretely, it's a configuration for systemd's 6[`mkosi` tool](https://mkosi.systemd.io/) that you use to build your own 7ParticleOS images. As described in the ParticleOS readme: 8 9> ParticleOS is a fully customizable immutable distribution implementing the 10concepts described in [Fitting Everything 11Together](https://0pointer.net/blog/fitting-everything-together.html). 12 13It basically gives you a system that, among other things, has the following 14characteristics: 15 16- OS versions are delivered as immutable `/usr` partitions 17 - A/B partitions for worry-free upgrades and rollbacks 18 - Block-level integrity provided by 19 [dm-verity](https://wiki.archlinux.org/title/Dm-verity) 20 - Authenticity provided by a signature on the dm-verity data, provided by 21 your own keys 22- Is easily hacked on, just like traditional mutable OSes 23 - Essentially *is* a traditional OS (one of Arch, Debian, or Fedora) 24 - Hacking on `/usr` is done at image-build-time, rather than during OS 25 runtime 26- Is signed with your own SecureBoot keys 27- LUKS-encrypted root partition with TPM-stored key for automatic unlocking 28- LUKS-encrypted home directory managed by 29 [`systemd-homed`](https://systemd.io/HOME_DIRECTORY/) 30 31This here is my own customized version/soft fork of ParticleOS. It's the Fedora 32variant. 33 34## Notable files/directories 35 36- [makefile](makefile)—contains most important commands. `build` and 37 `sysupdate` targets are the main ones. is also responsible for downloading 38 miscellaneous unpackaged binaries. 39- [mkosi.local.conf](mkosi.local.conf)—the linchpin that holds my custom 40 configuration together. 41- [mkosi.profiles/custom](mkosi.profiles/custom)—the custom profile where 42 most of my additions live. 43 - [mkosi.conf](mkosi.profiles/custom/mkosi.conf)—primarily contains the 44 packages I want installed. 45 - [mkosi.extra](mkosi.profiles/custom/mkosi.extra)—additional files that 46 get included in the built images.1
makefile+15 -6
@@ -1,9 +1,10 @@ 1 1BIN_DIR := mkosi.profiles/custom/mkosi.extra/usr/local/bin 2 2PACKAGES_DIR := mkosi.profiles/custom/mkosi.packages 3 3btdu := $(BIN_DIR)/btdu 4jj := $(BIN_DIR)/jj 4 5opensnitch := $(PACKAGES_DIR)/opensnitch.rpm 5 6opensnitch_ui := $(PACKAGES_DIR)/opensnitch_ui.rpm 6 ALL := $(btdu) $(opensnitch) $(opensnitch_ui) 7ALL := $(btdu) $(jj) $(opensnitch) $(opensnitch_ui) 7 8LATEST_VERSION = $(shell mkosi summary --json | jq -r '.Images[] | select(.Image == "main") | .ImageVersion') 8 9INSTALLED_VERSION = $(shell grep IMAGE_VERSION /etc/os-release | cut -d= -f2 | tr -d \") 9 10 @@ -17,9 +18,18 @@ 17 18$(BIN_DIR) $(PACKAGES_DIR): 18 19 mkdir -p $@ 19 20 21$(jj): $(MAKE_TMPDIR)/jj.tar.gz 22 echo 9967a240e3294a0bce4444c55d40a35b70af44c69b558689aced95e4e497cef2 $(MAKE_TMPDIR)/jj.tar.gz | sha256sum --check 23 tar -xzf $(MAKE_TMPDIR)/jj.tar.gz -C $(MAKE_TMPDIR) --one-top-level=jj_out --overwrite 24 cp $(MAKE_TMPDIR)/jj_out/jj $@ 25 26$(MAKE_TMPDIR)/jj.tar.gz: 27 wget https://github.com/jj-vcs/jj/releases/download/v0.35.0/jj-v0.35.0-x86_64-unknown-linux-musl.tar.gz -O $(MAKE_TMPDIR)/jj.tar.gz 28 20 29$(btdu): $(MAKE_TMPDIR)/btdu 21 30 echo 35b9bb752e6aa902b8281e92a5411b2f1cfb9fa251089adf909dc95efc011c48 $(MAKE_TMPDIR)/btdu | sha256sum --check 22 31 cp $(MAKE_TMPDIR)/btdu $@ 32 chmod +x $@ 23 33 24 34$(MAKE_TMPDIR)/btdu: 25 35 wget https://github.com/CyberShadow/btdu/releases/download/v0.6.0/btdu-static-x86_64 -O $(MAKE_TMPDIR)/btdu @@ -45,8 +55,8 @@ 45 55 ln -s ~/Vaults/particleos_keys/sbctl/var/keys/db/db.key mkosi.key 46 56 47 57.PHONY: build 48 build: 49 mkosi build --auto-bump 58build: deps 59 mkosi build --auto-bump --cache-only never 50 60 51 61.PHONY: systemd 52 62systemd: @@ -56,13 +66,12 @@ 56 66sysupdate: 57 67 mkosi sysupdate -- update 58 68 mkdir -p versions 59 cat mkosi.output/ParticleOS_$(LATEST_VERSION)_x86-64.manifest | gzip > versions/$(LATEST_VERSION).manifest.gz 60 69 cat mkosi.output/ParticleOS_$(LATEST_VERSION)_x86-64.changelog | gzip > versions/$(LATEST_VERSION).changelog.gz 61 70 62 71.PHONY: diff_changelog 63 72diff_changelog: 64 diff --color=always -u <(gzip --decompress --to-stdout versions/$(INSTALLED_VERSION).changelog.gz) mkosi.output/ParticleOS_$(LATEST_VERSION)_x86-64.changelog 73 sh -c 'diff --color=always -u <(gzip --decompress --to-stdout versions/$(INSTALLED_VERSION).changelog.gz) mkosi.output/ParticleOS_$(LATEST_VERSION)_x86-64.changelog; test $$? -le 1' 65 74 66 75.PHONY: diff_manifest 67 76diff_manifest: 68 diff --color=always -u <(gzip --decompress --to-stdout versions/$(INSTALLED_VERSION).manifest.gz) mkosi.output/ParticleOS_$(LATEST_VERSION)_x86-64.manifest 77 sh -c 'diff --color=always -u /etc/mkosi-manifest mkosi.output/ParticleOS_$(LATEST_VERSION)_x86-64.manifest; test $$? -le 1'1
mkosi.local.conf-137
@@ -3,9 +3,6 @@ 3 3Release=43 4 4 5 5[Build] 6 ToolsTree=default 7 ToolsTreeDistribution=fedora 8 ToolsTreeProfiles=misc,runtime,gui 9 6ExtraSearchPaths=./systemd/build/mkosi.builddir/fedora~43~x86-64/ 10 7 11 8[Config] @@ -16,137 +13,3 @@ 16 13 17 14[Content] 18 15VolatilePackageDirectories=./systemd/build/mkosi.builddir/fedora~43~x86-64/ 19 Packages= 20 ansible 21 awk 22 bash 23 bash-completion 24 binutils 25 bind-utils 26 bat 27 clatd 28 clang-devel 29 cowsay 30 cmatrix 31 curl 32 debian-keyring 33 dictd 34 du-dust 35 duf 36 d2 37 emacs 38 entr 39 exfatprogs 40 exiftool 41 fastfetch 42 fcitx5-mozc 43 fcitx5-configtool 44 fcitx5-gtk 45 fcitx5-qt 46 firejail 47 fontawesome-fonts-all 48 kcm-fcitx5 49 fd-find 50 file 51 fish 52 flatpak 53 fprintd-pam 54 fortune 55 # needed for appimage 56 fuse-libs 57 fzf 58 gcc 59 git 60 git-absorb 61 git-delta 62 git-lfs 63 glances 64 # needed for geoclue? 65 glib-networking 66 guestfs-tools 67 golang 68 graphviz 69 htop 70 iio-sensor-proxy 71 ImageMagick 72 iperf3 73 java-latest-openjdk 74 katago-opencl 75 intel-opencl 76 OpenCL-ICD-Loader 77 @kde-desktop 78 kde-connect 79 kde-partitionmanager 80 kitty 81 kitty-shell-integration 82 kitty-terminfo 83 krfb 84 libfprint-tod 85 libfprint-2-tod1-broadcom 86 libfprint-tod-selinux 87 litecli 88 lm_sensors 89 lolcat 90 lshw 91 lsof 92 man 93 # include mkosi just for shell completion and man pages 94 mkosi 95 mokutil 96 mpv 97 ncdu 98 neovim 99 ninja 100 okular 101 osc 102 # needed for bell fish function 103 oxygen-sounds 104 pre-commit 105 python3-neovim 106 nmap 107 nmap-ncat 108 # for coc.nvim 109 npm 110 # needed for clatd on F43 apparently 111 perl-IPC-Cmd 112 perl-JSON 113 pipewire-utils 114 plasma-disks 115 plasma-vault 116 pnpm 117 powertop 118 proxychains-ng 119 pv 120 python3-netaddr 121 ripgrep 122 rubygem-asciidoctor 123 rustup 124 rsync 125 sbctl 126 setroubleshoot 127 sbsigntools 128 sqlite 129 stgit 130 tcpdump 131 # not yet available for fedora 43 132 terraform-ls 133 tmux 134 toolbox 135 tor 136 translate-shell 137 trash-cli 138 ttyplot 139 units 140 unrar-free 141 @virtualization 142 wget 143 whois 144 wl-clipboard 145 wireshark 146 yubikey-manager 147 kernel 148 # repository directory comes from mkosi.packages 149 repository/opensnitch_ui.rpm 150 repository/opensnitch.rpm 151 python3-grpcio+protobuf 152 python3-slugify1
systemd+1 -1
@@ -1,1 +1,1 @@ 1 15bd1496c9b59c1ec8ee05e78c65eeb3f148c898 12e5f717545e2664ce2ed6b2dd84744b3789156b11
mkosi.profiles/custom/mkosi.conf+149
@@ -0,0 +1,149 @@ 1[Content] 2Packages= 3 # keyrings for building other distro images 4 archlinux-keyring 5 debian-keyring 6 ansible 7 ansible-collection-ansible-posix 8 ansible-collection-community-postgresql 9 ansible-collection-community-general 10 ansible-collection-community-crypto 11 python3-ansible-lint 12 asciiquarium 13 awk 14 bash 15 bash-completion 16 bat 17 binutils 18 bind-utils 19 bridge-utils 20 clatd 21 clang-devel 22 cowsay 23 cmatrix 24 curl 25 dictd 26 diffoscope 27 du-dust 28 duf 29 d2 30 emacs 31 entr 32 exfatprogs 33 exiftool 34 fastfetch 35 fcitx5-mozc 36 fcitx5-configtool 37 fcitx5-gtk 38 fcitx5-qt 39 firejail 40 kcm-fcitx5 41 fd-find 42 file 43 fish 44 flatpak 45 fprintd-pam 46 fortune 47 # needed for appimage 48 fuse-libs 49 fzf 50 gcc 51 git 52 git-absorb 53 git-delta 54 git-lfs 55 glances 56 # needed for geoclue? 57 glib-networking 58 guestfs-tools 59 golang 60 graphviz 61 htop 62 iio-sensor-proxy 63 ImageMagick 64 iperf3 65 java-latest-openjdk 66 katago-opencl 67 intel-opencl 68 OpenCL-ICD-Loader 69 @kde-desktop 70 kde-connect 71 kde-partitionmanager 72 kitty 73 kitty-shell-integration 74 kitty-terminfo 75 krfb 76 libfprint-tod 77 libfprint-2-tod1-broadcom 78 libfprint-tod-selinux 79 litecli 80 lm_sensors 81 lolcat 82 lshw 83 lsof 84 man 85 # include mkosi just for shell completion and man pages 86 mkosi 87 mokutil 88 mpv 89 ncdu 90 neovim 91 ninja 92 okular 93 opentofu 94 osc 95 # needed for bell fish function 96 ocean-sound-theme 97 pre-commit 98 python3-neovim 99 nmap 100 nmap-ncat 101 # for coc.nvim 102 npm 103 # needed for clatd on F43 apparently 104 perl-IPC-Cmd 105 perl-JSON 106 pipewire-utils 107 plasma-disks 108 plasma-vault 109 pnpm 110 powertop 111 progress 112 proxychains-ng 113 pv 114 python3-netaddr 115 restic 116 autorestic 117 ripgrep 118 rubygem-asciidoctor 119 rustup 120 rsync 121 sbctl 122 setroubleshoot 123 sbsigntools 124 sqlite 125 stgit 126 tcpdump 127 # not yet available for fedora 43 128 terraform-ls 129 tmux 130 toolbox 131 tor 132 translate-shell 133 trash-cli 134 ttyplot 135 units 136 unrar-free 137 @virtualization 138 wget 139 whois 140 wl-clipboard 141 wireshark 142 yubikey-manager 143 gnupg2-scdaemon 144 kernel 145 # repository directory comes from mkosi.packages 146 repository/opensnitch_ui.rpm 147 repository/opensnitch.rpm 148 python3-grpcio+protobuf 149 python3-slugify1
mkosi.profiles/custom/mkosi.postinst.d/wireshark.chroot-4
@@ -1,4 +0,0 @@ 1 #!/usr/bin/sh 2 3 chmod 755 /usr/bin/dumpcap 4 setcap -r /usr/bin/dumpcap1
mkosi.sandbox/etc/yum.repos.d/_copr:copr.fedorainfracloud.org:chenxiaolong:sbctl.repo-10
@@ -1,10 +0,0 @@ 1 [copr:copr.fedorainfracloud.org:chenxiaolong:sbctl] 2 name=Copr repo for sbctl owned by chenxiaolong 3 baseurl=https://download.copr.fedorainfracloud.org/results/chenxiaolong/sbctl/fedora-$releasever-$basearch/ 4 type=rpm-md 5 skip_if_unavailable=True 6 gpgcheck=1 7 gpgkey=https://download.copr.fedorainfracloud.org/results/chenxiaolong/sbctl/pubkey.gpg 8 repo_gpgcheck=0 9 enabled=1 10 enabled_metadata=11
mkosi.sandbox/etc/yum.repos.d/_copr:copr.fedorainfracloud.org:grahamwhiteuk:libfprint-tod.repo-10
@@ -1,10 +0,0 @@ 1 [copr:copr.fedorainfracloud.org:grahamwhiteuk:libfprint-tod] 2 name=Copr repo for libfprint-tod owned by grahamwhiteuk 3 baseurl=https://download.copr.fedorainfracloud.org/results/grahamwhiteuk/libfprint-tod/fedora-$releasever-$basearch/ 4 type=rpm-md 5 skip_if_unavailable=True 6 gpgcheck=1 7 gpgkey=https://download.copr.fedorainfracloud.org/results/grahamwhiteuk/libfprint-tod/pubkey.gpg 8 repo_gpgcheck=0 9 enabled=1 10 enabled_metadata=11
mkosi.sandbox/etc/yum.repos.d/hashicorp.repo-13
@@ -1,13 +0,0 @@ 1 [hashicorp] 2 name=Hashicorp Stable - $basearch 3 baseurl=https://rpm.releases.hashicorp.com/fedora/$releasever/$basearch/stable 4 enabled=1 5 gpgcheck=1 6 gpgkey=https://rpm.releases.hashicorp.com/gpg 7 8 [hashicorp-test] 9 name=Hashicorp Test - $basearch 10 baseurl=https://rpm.releases.hashicorp.com/fedora/$releasever/$basearch/test 11 enabled=0 12 gpgcheck=1 13 gpgkey=https://rpm.releases.hashicorp.com/gpg1
mkosi.extra/usr/lib/tmpfiles.d/etc.conf+9 -2
@@ -3,6 +3,7 @@ 3 3# This overrides the same file from systemd since we want to symlink everything 4 4# into /etc instead of copying so updates to /usr propagate properly. 5 5L /etc/os-release - - - - ../usr/lib/os-release 6L /etc/mkosi-manifest - - - - ../usr/lib/mkosi-manifest 6 7L+ /etc/mtab - - - - ../proc/self/mounts 7 8# Contains the default systemd locale 8 9L /etc/locale.conf @@ -48,6 +49,8 @@ 48 49L? /etc/tuned 49 50# Required by gdm 50 51L? /etc/gdm 52# Required by sdm 53L? /etc/sddm 51 54# Required by geoclue 52 55L? /etc/geoclue 53 56# Required by fwupd @@ -65,10 +68,14 @@ 65 68L? /etc/PackageKit 66 69# ModemManager needds its dbus policy file 67 70L? /etc/dbus1/systemd.d/org.freedesktop.ModemManager1.conf 71# man fails without this in /etc/ 72L? /etc/manpath.config 68 73# Required by man-db-cache-update.service 69 74L? /etc/sysconfig/man-db 70 # sddm breaks otherwise, at least with homed? 71 L? /etc/sddm 75# some programs still rely on logrotate 76L? /etc/logrotate.conf 77L? /etc/logrotate.d 78 72 79 73 80## custom 74 81C /etc/opensnitchd1
mkosi.profiles/gnome/mkosi.conf.d/debian/mkosi.conf-1
@@ -9,6 +9,5 @@ 9 9 gnome-core 10 10 gnome-initial-setup 11 11 gnome-keyring-pkcs11 12 gnome-session-xsession 13 12 gnome-software-plugin-flatpak 14 13 gnome-software-plugin-fwupd1
mkosi.extra/usr/lib/systemd/system-preset/10-jcgl.preset-2
@@ -1,2 +0,0 @@ 1 enable opensnitch.service 2 enable fprintd.service1
mkosi.profiles/custom/mkosi.sandbox/etc/yum.repos.d/_copr:copr.fedorainfracloud.org:chenxiaolong:sbctl.repo+10
@@ -0,0 +1,10 @@ 1[copr:copr.fedorainfracloud.org:chenxiaolong:sbctl] 2name=Copr repo for sbctl owned by chenxiaolong 3baseurl=https://download.copr.fedorainfracloud.org/results/chenxiaolong/sbctl/fedora-$releasever-$basearch/ 4type=rpm-md 5skip_if_unavailable=True 6gpgcheck=1 7gpgkey=https://download.copr.fedorainfracloud.org/results/chenxiaolong/sbctl/pubkey.gpg 8repo_gpgcheck=0 9enabled=1 10enabled_metadata=11
mkosi.profiles/custom/mkosi.sandbox/etc/yum.repos.d/_copr:copr.fedorainfracloud.org:grahamwhiteuk:libfprint-tod.repo+10
@@ -0,0 +1,10 @@ 1[copr:copr.fedorainfracloud.org:grahamwhiteuk:libfprint-tod] 2name=Copr repo for libfprint-tod owned by grahamwhiteuk 3baseurl=https://download.copr.fedorainfracloud.org/results/grahamwhiteuk/libfprint-tod/fedora-$releasever-$basearch/ 4type=rpm-md 5skip_if_unavailable=True 6gpgcheck=1 7gpgkey=https://download.copr.fedorainfracloud.org/results/grahamwhiteuk/libfprint-tod/pubkey.gpg 8repo_gpgcheck=0 9enabled=1 10enabled_metadata=11
mkosi.profiles/custom/mkosi.sandbox/etc/yum.repos.d/hashicorp.repo+13
@@ -0,0 +1,13 @@ 1[hashicorp] 2name=Hashicorp Stable - $basearch 3baseurl=https://rpm.releases.hashicorp.com/fedora/$releasever/$basearch/stable 4enabled=1 5gpgcheck=1 6gpgkey=https://rpm.releases.hashicorp.com/gpg 7 8[hashicorp-test] 9name=Hashicorp Test - $basearch 10baseurl=https://rpm.releases.hashicorp.com/fedora/$releasever/$basearch/test 11enabled=0 12gpgcheck=1 13gpgkey=https://rpm.releases.hashicorp.com/gpg1
mkosi.profiles/gnome/mkosi.conf.d/debian/mkosi.conf.d/gnome-xsession.conf+13
@@ -0,0 +1,13 @@ 1# SPDX-License-Identifier: LGPL-2.1-or-later 2 3[TriggerMatch] 4Distribution=debian 5Release=trixie 6 7[TriggerMatch] 8Distribution=ubuntu 9Release=|oracular 10Release=|plucky 11 12[Content] 13Packages=gnome-session-xsession1
mkosi.profiles/custom/mkosi.extra/usr/local/lib/systemd/system-preset/10-jcgl.preset+3
@@ -0,0 +1,3 @@ 1enable opensnitch.service 2enable fprintd.service 3enable units_cur.timer1
mkosi.profiles/custom/mkosi.extra/usr/local/lib/systemd/system/units_cur.service+8
@@ -0,0 +1,8 @@ 1[Unit] 2Description=Update GNU Units currencies 3After=network-online.target 4Requires=network-online.target 5 6[Service] 7StateDirectory=units 8ExecStart=/usr/bin/units_cur1
mkosi.profiles/custom/mkosi.extra/usr/local/lib/systemd/system/units_cur.timer+9
@@ -0,0 +1,9 @@ 1[Unit] 2Description=Update GNU Units currencies 3 4[Timer] 5OnCalendar=weekly 6Persistent=yes 7 8[Install] 9WantedBy=timers.target1
mkosi.profiles/custom/mkosi.extra/usr/local/lib/systemd/user/autorestic.service+7
@@ -0,0 +1,7 @@ 1[Unit] 2Description=Autorestic Backups Service 3 4[Service] 5ExecStart=/usr/bin/autorestic --ci cron 6ExecStartPost=/usr/bin/autorestic --ci forget 7Type=oneshot1
mkosi.profiles/custom/mkosi.extra/usr/local/lib/systemd/user/autorestic.timer+9
@@ -0,0 +1,9 @@ 1[Unit] 2Description=Autorestic Backups Timer 3 4[Timer] 5OnCalendar=daily 6Persistent=yes 7 8[Install] 9WantedBy=timers.target1
mkosi.profiles/custom/mkosi.extra/usr/local/lib/systemd/system/logrotate.service.d/10-jcgl.conf+2
@@ -0,0 +1,2 @@ 1[Service] 2StateDirectory=logrotate1
| jcgl updated patch to version 26 | ||
| jcgl updated patch to version 25 | ||
| jcgl updated patch to version 24 | ||
| jcgl updated patch to version 23 | ||
| jcgl updated patch to version 22 | ||
| jcgl updated patch to version 21 | ||
| jcgl updated patch to version 20 | ||
| jcgl updated patch to version 19 | ||
| jcgl updated patch to version 18 | ||
| jcgl updated patch to version 17 | ||
| jcgl updated patch to version 16 | ||
| jcgl updated patch to version 15 | ||
| jcgl updated patch to version 14 | ||
| jcgl updated patch to version 13 | ||
| jcgl updated patch to version 12 | ||
| jcgl updated patch to version 11 | ||
| jcgl updated patch to version 10 | ||
| jcgl updated patch to version 9 | ||
| jcgl updated patch to version 8 | ||
| jcgl updated patch to version 7 | ||
| jcgl updated patch to version 6 | ||
| jcgl updated patch to version 5 | ||
| jcgl updated patch to version 4 | ||
| jcgl updated patch to version 3 | ||
| jcgl updated patch to version 2 | ||
| jcgl created patch version 1 |