mirror of
https://github.com/outbackdingo/hyprcosmic.git
synced 2026-08-25 14:53:21 +00:00
Compare commits
59
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6eceadf650 | ||
|
|
0098ab4d8f | ||
|
|
3e34c8e746 | ||
|
|
0d128858ad | ||
|
|
f846fcb546 | ||
|
|
43bcd5266f | ||
|
|
a21edb170b | ||
|
|
ed1607856b | ||
|
|
4412bb00d7 | ||
|
|
6169da68ca | ||
|
|
d103b64024 | ||
|
|
9af2199729 | ||
|
|
9e8ac99bcb | ||
|
|
efe2c51b53 | ||
|
|
9b0e61c54b | ||
|
|
f5fa41194e | ||
|
|
f9abdc105d | ||
|
|
dee71b6f25 | ||
|
|
d955da69d4 | ||
|
|
5dcb211692 | ||
|
|
e13e24b54e | ||
|
|
dafb7bb1fa | ||
|
|
13ea973991 | ||
|
|
8722d5507c | ||
|
|
e4edeeca3f | ||
|
|
7106172bcd | ||
|
|
0972aa1396 | ||
|
|
8f98c11b8c | ||
|
|
da3cf5ee1e | ||
|
|
508b7fe8e6 | ||
|
|
39c24b0b4e | ||
|
|
cb3fce4635 | ||
|
|
366bf74f49 | ||
|
|
3c128a6c52 | ||
|
|
ce6bcdb54d | ||
|
|
87391a426f | ||
|
|
8cd00decac | ||
|
|
221a9856f3 | ||
|
|
ea32f6c30b | ||
|
|
102efba5ae | ||
|
|
3ede740ebd | ||
|
|
f15e88c4c6 | ||
|
|
e9a8b4be7f | ||
|
|
6fb8b35cf5 | ||
|
|
39ea8cb129 | ||
|
|
759fb8efea | ||
|
|
cba864f0cb | ||
|
|
b027c4fc10 | ||
|
|
b8d349fd33 | ||
|
|
d539f2b331 | ||
|
|
a07aecf6a2 | ||
|
|
534c1c132f | ||
|
|
547479a1c5 | ||
|
|
5c1ab6d9eb | ||
|
|
55489ceffb | ||
|
|
efe2106ca2 | ||
|
|
b6011670e3 | ||
|
|
c4cd5a4950 | ||
|
|
9e13a3e47a |
@@ -0,0 +1,8 @@
|
||||
- [ ] I have disclosed use of any AI generated code in my commit messages.
|
||||
- If you are using an LLM, and do not fully understand the changes it is making to the code base, do not create a PR.
|
||||
- In our experience, AI generated code often results in overly complex code that lacks enough context for a proper fix or feature inclusion. This results in considerably longer code reviews. Due to this, AI authored or partially authored PRs may be closed without comment.
|
||||
- [ ] I understand these changes in full and will be able to respond to review comments.
|
||||
- [ ] My change is accurately described in the commit message.
|
||||
- [ ] My contribution is tested and working as described.
|
||||
- [ ] I have read the [Developer Certificate of Origin](https://developercertificate.org/) and certify my contribution under its conditions.
|
||||
|
||||
@@ -17,13 +17,12 @@ jobs:
|
||||
Test:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: archlinux:latest
|
||||
image: archlinux:base-devel
|
||||
volumes:
|
||||
- /:/host
|
||||
steps:
|
||||
- run: >
|
||||
pacman --noconfirm -Syu
|
||||
base-devel
|
||||
pacman --noconfirm --needed -Syu
|
||||
cargo
|
||||
clang
|
||||
desktop-file-utils
|
||||
@@ -31,6 +30,7 @@ jobs:
|
||||
gtk3
|
||||
gtk4
|
||||
just
|
||||
libdisplay-info
|
||||
libinput
|
||||
libxkbcommon
|
||||
llvm
|
||||
@@ -47,7 +47,7 @@ jobs:
|
||||
flatpak
|
||||
nasm
|
||||
- run: rm -rf /host/usr/local/lib/android # Free space
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
submodules: recursive
|
||||
# Safe directory behavior seems to have issues with `container:`
|
||||
|
||||
+12
@@ -98,3 +98,15 @@
|
||||
path = cosmic-player
|
||||
url = https://github.com/pop-os/cosmic-player.git
|
||||
branch = master
|
||||
[submodule "cosmic-initial-setup"]
|
||||
path = cosmic-initial-setup
|
||||
url = https://github.com/pop-os/cosmic-initial-setup
|
||||
branch = master
|
||||
[submodule "pop-launcher"]
|
||||
path = pop-launcher
|
||||
url = https://github.com/pop-os/launcher.git
|
||||
branch = master
|
||||
[submodule "cosmic-monitor"]
|
||||
path = cosmic-monitor
|
||||
url = https://github.com/pop-os/cosmic-monitor.git
|
||||
branch = master
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
# COSMIC Desktop
|
||||
|
||||
Currently an incomplete **alpha**. Testing instructions below for various distributions.
|
||||
|
||||
[COSMIC](https://system76.com/cosmic) is a desktop environment offering performance, efficiency, and personalization to empower a wide variety of use cases.
|
||||
|
||||
## Components of COSMIC Desktop
|
||||
* [cosmic-applets](https://github.com/pop-os/cosmic-applets)
|
||||
@@ -13,7 +12,9 @@ Currently an incomplete **alpha**. Testing instructions below for various distri
|
||||
* [cosmic-greeter](https://github.com/pop-os/cosmic-greeter)
|
||||
* [cosmic-icons](https://github.com/pop-os/cosmic-icons)
|
||||
* [cosmic-idle](https://github.com/pop-os/cosmic-idle)
|
||||
* [cosmic-initial-setup](https://github.com/pop-os/cosmic-initial-setup)
|
||||
* [cosmic-launcher](https://github.com/pop-os/cosmic-launcher)
|
||||
* [cosmic-monitor](https://github.com/pop-os/cosmic-monitor)
|
||||
* [cosmic-notifications](https://github.com/pop-os/cosmic-notifications)
|
||||
* [cosmic-osd](https://github.com/pop-os/cosmic-osd)
|
||||
* [cosmic-panel](https://github.com/pop-os/cosmic-panel)
|
||||
@@ -36,108 +37,22 @@ Currently an incomplete **alpha**. Testing instructions below for various distri
|
||||
* [cosmic-text](https://github.com/pop-os/cosmic-text)
|
||||
* [cosmic-theme](https://github.com/pop-os/cosmic-theme)
|
||||
* [cosmic-time](https://github.com/pop-os/cosmic-time)
|
||||
|
||||
### COSMIC toolkit for apps and applets
|
||||
|
||||
* [libcosmic](https://github.com/pop-os/libcosmic)
|
||||
|
||||
## Setup on distributions without packaging of cosmic components
|
||||
|
||||
The COSMIC desktop environment requires a few dependencies:
|
||||
(This list does not try to be exhaustive, but rather tries to provide a decent starting point. For detailed instructions, check out the individual projects):
|
||||
|
||||
- [just](https://github.com/casey/just)
|
||||
- rustc
|
||||
- libwayland
|
||||
- mesa (or third-party libEGL/libGL implementations, though interfacing with mesa's libglvnd is generally recommended).
|
||||
- libseat
|
||||
- libxkbcommon
|
||||
- libinput
|
||||
- udev
|
||||
- dbus
|
||||
|
||||
optionally (though the build-system might currently require these libraries):
|
||||
- libsystem
|
||||
- libpulse
|
||||
- pop-launcher
|
||||
- libexpat1
|
||||
- libfontconfig
|
||||
- libfreetype
|
||||
- lld
|
||||
- cargo
|
||||
- libgbm-dev
|
||||
- libclang-dev
|
||||
- libpipewire-0.3-dev
|
||||
|
||||
Note: `libfontconfig`, `libfreetype`, and `lld` are packages specific to Linux distributions. You may need to find the equivalent version for your distribution if you are not using Pop!_OS.
|
||||
|
||||
The required ones can be installed with:
|
||||
```
|
||||
sudo apt install just rustc libglvnd-dev libwayland-dev libseat-dev libxkbcommon-dev libinput-dev udev dbus libdbus-1-dev libpam0g-dev libpixman-1-dev libssl-dev libflatpak-dev -y
|
||||
```
|
||||
|
||||
and the optional ones with:
|
||||
```
|
||||
sudo apt install libsystemd-dev libpulse-dev pop-launcher libexpat1-dev libfontconfig-dev libfreetype-dev mold cargo libgbm-dev libclang-dev libpipewire-0.3-dev -y
|
||||
```
|
||||
|
||||
They can be installed all at once with:
|
||||
```
|
||||
sudo apt install just rustc libglvnd-dev libwayland-dev libseat-dev libxkbcommon-dev libinput-dev udev dbus libdbus-1-dev libsystemd-dev libpixman-1-dev libssl-dev libflatpak-dev libpulse-dev pop-launcher libexpat1-dev libfontconfig-dev libfreetype-dev mold cargo libgbm-dev libclang-dev libpipewire-0.3-dev libpam0g-dev -y
|
||||
```
|
||||
|
||||
### Testing
|
||||
|
||||
The easiest way to test COSMIC DE currently is by building a systemd system extension (see `man systemd-sysext`).
|
||||
|
||||
```
|
||||
git clone --recurse-submodules https://github.com/pop-os/cosmic-epoch
|
||||
cd cosmic-epoch
|
||||
just sysext
|
||||
```
|
||||
|
||||
This will create a system-extension called `cosmic-sysext`, that you can move (without renaming!) into e.g. `/var/lib/extensions`.
|
||||
After starting systemd-sysext.service (`sudo systemctl enable --now systemd-sysext`) and refreshing (`sudo systemd-sysext refresh`) or rebooting,
|
||||
*COSMIC* will be an available option in your favorite display manager.
|
||||
|
||||
If you have SELinux enabled (e.g. on Fedora), the installed extension won't have the correct labels applied.
|
||||
To test COSMIC, you can temporarily disable it and restart `gdm` (note that this will close your running programs).
|
||||
|
||||
```shell
|
||||
sudo setenforce 0
|
||||
sudo systemctl restart gdm
|
||||
```
|
||||
|
||||
**Note**: An extension created this way will be linked against specific libraries on your system and will not work on other distributions.
|
||||
It also requires the previously mentioned libraries/dependencies at runtime to be installed in your system (the system extension does not carry these libraries).
|
||||
|
||||
**Read-Only Filesystem**: If you're not on an immutable distro you may notice that `/usr/` and `/opt/` are read-only.
|
||||
this is caused by `systemd-sysext` being enabled, when you are done testing you can disable `systemd-sysext` (`sudo systemctl disable --now systemd-sysext`)
|
||||
|
||||
It is thus no proper method for long term deployment.
|
||||
|
||||
### Packaging
|
||||
|
||||
COSMIC DE is packaged for Pop!_OS. For reference, look at the `debian` folders in the projects repositories.
|
||||
These and the `justfile` inside this repository may be used as references on how to package COSMIC DE, though no backwards-compatibility guarantees are provided at this stage.
|
||||
|
||||
### Versioning
|
||||
|
||||
COSMIC DE is very much still work-in-progress and thus does not follow a versioning scheme so far.
|
||||
We do our best to keep the referenced submodule commits in this repository building and working together, as a consequence they might not contain the latest updates and features from these repositories (yet).
|
||||
|
||||
Notes on versioning and packaging all these components together properly will be added at a later stage once COSMIC DE gets its first release.
|
||||
|
||||
## Installing on Pop!\_OS
|
||||
|
||||
COSMIC DE is in its first alpha release. Using and testing the alpha is welcome. Bugs and breakage are expected.
|
||||
### Pop!\_OS 24.04
|
||||
|
||||
### Pop!\_OS 24.04 Alpha
|
||||
COSMIC DE's first release (Epoch 1) is included in Pop!\_OS 24.04. There are two ways to get the 24.04 release:
|
||||
|
||||
The recommended way to test COSMIC Epoch on Pop!\_OS is by using the Pop!\_OS 24.04 LTS Alpha release. There are two ways to get the 24.04 Alpha:
|
||||
|
||||
- Install it from the [latest Alpha release ISO](https://system76.com/cosmic/).
|
||||
- Install it from the [latest release ISO](https://system76.com/cosmic/).
|
||||
- Upgrade an existing Pop!\_OS 22.04 installation using the following command: `pop-upgrade release upgrade -f`
|
||||
- If you experience problems during the upgrade, please open an issue in the [pop-upgrade GitHub repository](https://github.com/pop-os/upgrade) or join the [Pop!\_OS Mattermost chat server](https://chat.pop-os.org) for assistance.
|
||||
|
||||
Pop!\_OS 24.04 Alpha installations will be upgradable to the final 24.04 release, but some manual interventions may occasionally be required during development. If you're using Pop!\_OS 24.04 Alpha, then it's recommended to join the [Pop!\_OS Mattermost chat server](https://chat.pop-os.org) to receive news about the 24.04 development cycle.
|
||||
COSMIC users, including Pop!_OS users, are welcome to join the [Pop!\_OS Mattermost chat server](https://chat.pop-os.org) to receive news about development. Join the [COSMIC Epoch channel](https://chat.pop-os.org/pop-os/channels/cosmic-epoch) for COSMIC user discussion, or the [Development channel](https://chat.pop-os.org/pop-os/channels/development) for developer-oriented discussion.
|
||||
|
||||
### Pop!\_OS 22.04
|
||||
|
||||
@@ -202,16 +117,42 @@ Then log out, click on your user, and a sprocket at the bottom right shows an ad
|
||||
For a more detailed discussion, consider the [relevant section in the Arch wiki](https://wiki.archlinux.org/title/COSMIC).
|
||||
|
||||
## Installing on Fedora Linux
|
||||
Cosmic may be installed via a Fedora COPR repository.
|
||||
|
||||
COSMIC can be installed from the built-in repositories on Fedora 41+:
|
||||
|
||||
```
|
||||
dnf copr enable ryanabx/cosmic-epoch
|
||||
dnf install cosmic-desktop
|
||||
sudo dnf install @cosmic-desktop-environment
|
||||
```
|
||||
|
||||
Then log out, click on your user, and a sprocket at the bottom right shows an additional entry alongside your desktop environments. Change to COSMIC and proceed with log in.
|
||||
For further information, you may check the [COPR page](https://copr.fedorainfracloud.org/coprs/ryanabx/cosmic-epoch/).
|
||||
Alternatively, for more up-to-date COSMIC packages (but less quality control), you can use the nightly COPR builds:
|
||||
|
||||
## Installing on openSUSE tumbleweed
|
||||
```
|
||||
sudo dnf copr enable ryanabx/cosmic-epoch && sudo dnf install cosmic-desktop
|
||||
```
|
||||
|
||||
After installing, log out, click on your user, and use the sprocket in the bottom right to select the COSMIC desktop environment before logging in.
|
||||
For more information, check the [Fedora Wiki COSMIC SIG page](https://fedoraproject.org/wiki/SIGs/COSMIC) or the [COPR page](https://copr.fedorainfracloud.org/coprs/ryanabx/cosmic-epoch/).
|
||||
|
||||
## Installing on NixOS
|
||||
The COSMIC module on NixOS can be enabled by adding the following lines to
|
||||
your NixOS configuration file (`configuration.nix` or in your Flake):
|
||||
```nix
|
||||
{
|
||||
# Enable the COSMIC login manager
|
||||
services.displayManager.cosmic-greeter.enable = true;
|
||||
|
||||
# Enable the COSMIC desktop environment
|
||||
services.desktopManager.cosmic.enable = true;
|
||||
}
|
||||
```
|
||||
|
||||
While some packages like `cosmic-session` might be present in prior versions,
|
||||
the modules that add full support for COSMIC were added in **NixOS 25.05**.
|
||||
|
||||
You can find more details on the [NixOS Wiki](https://wiki.nixos.org/wiki/COSMIC).
|
||||
|
||||
|
||||
## Installing on openSUSE tumbleweed
|
||||
Cosmic can be installed by adding X11:COSMIC:Factory repo with opi.
|
||||
```
|
||||
opi patterns-cosmic
|
||||
@@ -224,15 +165,180 @@ For further information, you may check the [OBS page](https://build.opensuse.org
|
||||
## Installing on Gentoo Linux
|
||||
COSMIC can be installed on Gentoo via a custom overlay. Add the overlay using your preferred overlay manager (such as eselect), and then install the desktop environment:
|
||||
|
||||
`eselect repository add cosmic-overlay git https://github.com/fsvm88/cosmic-overlay.git`
|
||||
`eselect repository add cosmic-overlay git https://github.com/fsvm88/cosmic-overlay.git`
|
||||
|
||||
Next, install the COSMIC desktop environment and its associated themes:
|
||||
Next, synchronize the repository with
|
||||
`emaint sync -r cosmic-overlay`
|
||||
|
||||
`emerge cosmic-meta pop-theme-meta`
|
||||
and install the COSMIC desktop environment and its associated themes:
|
||||
|
||||
Then log out, click on your user, and a sprocket at the bottom right shows an additional entry alongside your desktop environments. Change to COSMIC and proceed with log in.
|
||||
`emerge cosmic-meta pop-theme-meta -av`
|
||||
|
||||
Please note that the ebuilds have testing keywords and need to unmasked on stable systems for successful installation.
|
||||
|
||||
Then log out, and switch the desktop environment to COSMIC, the procedure depends on your login manager.
|
||||
For further information, you may check the [Gentoo Wiki](https://wiki.gentoo.org/wiki/COSMIC) or [Overlay Repository](https://github.com/fsvm88/cosmic-overlay).
|
||||
|
||||
## Setup on distributions without packaging of COSMIC components
|
||||
|
||||
The COSMIC desktop environment requires a few dependencies. The rustc and just packages of your distro may be too old, so we recommend installing rustc and cargo with rustup, and installing just with cargo.
|
||||
(This list does not try to be exhaustive, but rather tries to provide a decent starting point. For detailed instructions, check out the individual projects):
|
||||
|
||||
- [just](https://github.com/casey/just)
|
||||
- rustc
|
||||
- cargo
|
||||
- c compiler (cc)
|
||||
- make
|
||||
- git
|
||||
- libwayland
|
||||
- mesa (or third-party libEGL/libGL implementations, though interfacing with mesa's libglvnd is generally recommended).
|
||||
- libseat
|
||||
- libxkbcommon
|
||||
- libinput
|
||||
- udev
|
||||
- dbus
|
||||
- libdisplay-info-dev
|
||||
- libgstreamer1.0-dev
|
||||
- libgstreamer-plugins-base1.0-dev
|
||||
|
||||
optionally (though the build-system might currently require these libraries):
|
||||
- libsystem
|
||||
- libpulse
|
||||
- libexpat1
|
||||
- libfontconfig
|
||||
- libfreetype
|
||||
- lld
|
||||
- libgbm-dev
|
||||
- libclang-dev
|
||||
- libpipewire-0.3-dev
|
||||
|
||||
Note: `libfontconfig`, `libfreetype`, and `lld` are packages specific to Linux distributions. You may need to find the equivalent version for your distribution if you are not using Pop!_OS.
|
||||
|
||||
The required ones can be installed with:
|
||||
```
|
||||
sudo apt install -y \
|
||||
build-essential \
|
||||
dbus \
|
||||
git \
|
||||
libdbus-1-dev \
|
||||
libdisplay-info-dev \
|
||||
libflatpak-dev \
|
||||
libglvnd-dev \
|
||||
libgstreamer-plugins-base1.0-dev \
|
||||
libgstreamer1.0-dev \
|
||||
libinput-dev \
|
||||
libpam0g-dev \
|
||||
libpixman-1-dev \
|
||||
libseat-dev \
|
||||
libssl-dev \
|
||||
libwayland-dev \
|
||||
libxkbcommon-dev \
|
||||
rustup \
|
||||
udev
|
||||
|
||||
rustup toolchain install stable
|
||||
cargo install just
|
||||
```
|
||||
|
||||
and the optional ones with:
|
||||
```
|
||||
sudo apt install -y \
|
||||
libclang-dev \
|
||||
libexpat1-dev \
|
||||
libfontconfig-dev \
|
||||
libfreetype-dev \
|
||||
libgbm-dev \
|
||||
libpipewire-0.3-dev \
|
||||
libpulse-dev \
|
||||
libsystemd-dev \
|
||||
lld \
|
||||
mold
|
||||
```
|
||||
|
||||
They can be installed all at once with:
|
||||
```
|
||||
sudo apt install -y \
|
||||
build-essential \
|
||||
dbus \
|
||||
git \
|
||||
libclang-dev \
|
||||
libdbus-1-dev \
|
||||
libdisplay-info-dev \
|
||||
libexpat1-dev \
|
||||
libflatpak-dev \
|
||||
libfontconfig-dev \
|
||||
libfreetype-dev \
|
||||
libgbm-dev \
|
||||
libglvnd-dev \
|
||||
libgstreamer-plugins-base1.0-dev \
|
||||
libgstreamer1.0-dev \
|
||||
libinput-dev \
|
||||
libpam0g-dev \
|
||||
libpipewire-0.3-dev \
|
||||
libpixman-1-dev \
|
||||
libpulse-dev \
|
||||
libseat-dev \
|
||||
libssl-dev \
|
||||
libsystemd-dev \
|
||||
libwayland-dev \
|
||||
libxkbcommon-dev \
|
||||
lld \
|
||||
mold \
|
||||
rustup \
|
||||
udev
|
||||
|
||||
rustup toolchain install stable
|
||||
cargo install just
|
||||
```
|
||||
|
||||
### Testing
|
||||
|
||||
The easiest way to test COSMIC DE currently is by building a systemd system extension (see `man systemd-sysext`).
|
||||
|
||||
```
|
||||
git clone --recurse-submodules https://github.com/pop-os/cosmic-epoch
|
||||
cd cosmic-epoch
|
||||
just sysext
|
||||
```
|
||||
|
||||
This will create a system-extension called `cosmic-sysext`, which you can move (without renaming!) into e.g. `/var/lib/extensions`.
|
||||
After starting systemd-sysext.service (`sudo systemctl enable --now systemd-sysext`) and refreshing (`sudo systemd-sysext refresh`) or rebooting,
|
||||
COSMIC will be an available option in your favorite display manager.
|
||||
|
||||
If you have SELinux enabled (e.g. on Fedora), the installed extension won't have the correct labels applied.
|
||||
To test COSMIC, you can temporarily disable it and restart `gdm` (note that this will close your running programs).
|
||||
|
||||
```shell
|
||||
sudo setenforce 0
|
||||
sudo systemctl restart gdm
|
||||
```
|
||||
|
||||
**Note**: An extension created this way will be linked against specific libraries on your system and will not work on other distributions.
|
||||
It also requires the previously mentioned libraries/dependencies at runtime to be installed in your system (the system extension does not carry these libraries).
|
||||
|
||||
**Read-Only Filesystem**: If you're not on an immutable distro you may notice that `/usr/` and `/opt/` are read-only.
|
||||
this is caused by `systemd-sysext` being enabled, when you are done testing you can disable `systemd-sysext` (`sudo systemctl disable --now systemd-sysext`)
|
||||
|
||||
It is thus not a proper method for long term deployment.
|
||||
|
||||
### Packaging
|
||||
|
||||
COSMIC DE is packaged for Pop!_OS. For reference, look at the `debian` folders in the projects repositories.
|
||||
These and the `justfile` inside this repository may be used as references on how to package COSMIC DE, though no backwards-compatibility guarantees are provided at this stage.
|
||||
|
||||
### Versioning
|
||||
|
||||
COSMIC DE is a work in progress with many moving pieces.
|
||||
We do our best to keep the referenced submodule commits in this repository building and working together; as a consequence, they might not contain the latest updates and features from these repositories (yet).
|
||||
|
||||
The commits corresponding with the current release are tagged `epoch-X.Y.Z`, where `X` is the major release and the last two numbers denote incremental minor releases. (During development of new major versions, an additional `-alpha.Y.Z` or `-beta.Y.Z` may be appended.)
|
||||
|
||||
COSMIC Epoch version numbers are mainly for the benefit of non-Pop!_OS distributions; Pop!_OS uses its own build system, and typically receives updates to individual submodules before they're tagged as part of a COSMIC Epoch release.
|
||||
|
||||
## Translating
|
||||
|
||||
To submit translations for COSMIC in your language, please use Weblate: https://hosted.weblate.org/projects/pop-os/
|
||||
|
||||
## Contact
|
||||
- [Mattermost](https://chat.pop-os.org/)
|
||||
- [Twitter](https://twitter.com/pop_os_official)
|
||||
|
||||
+1
-1
Submodule cosmic-applets updated: f26992e41a...e544cb54c2
+1
-1
Submodule cosmic-applibrary updated: 279c614b91...ce33b9e1cc
+1
-1
Submodule cosmic-bg updated: b44439fcd5...ed65f7d3dc
+1
-1
Submodule cosmic-comp updated: 96e9bf3b81...dec1ee8633
+1
-1
Submodule cosmic-edit updated: d4294713d8...60c38e818a
+1
-1
Submodule cosmic-files updated: 63176a1e2a...5278c67957
+1
-1
Submodule cosmic-greeter updated: 9e22418e53...2290aae5e2
+1
-1
Submodule cosmic-icons updated: 0b2aed444d...b78b059636
+1
-1
Submodule cosmic-idle updated: 267bb837f1...c95d066b5b
Submodule
+1
Submodule cosmic-initial-setup added at b209a8d460
+1
-1
Submodule cosmic-launcher updated: 77ca208555...61ab43a71a
Submodule
+1
Submodule cosmic-monitor added at 346a34b0be
+1
-1
Submodule cosmic-notifications updated: 8eae7e0f62...7c723b7705
+1
-1
Submodule cosmic-osd updated: 54c9672fa2...ce431b4d71
+1
-1
Submodule cosmic-panel updated: af73ac840b...db97fd5974
+1
-1
Submodule cosmic-player updated: 1503065026...d910353b6f
+1
-1
Submodule cosmic-randr updated: c32d0d6bfd...6e8e795970
+1
-1
Submodule cosmic-screenshot updated: 1747b8a53e...d6ef210e98
+1
-1
Submodule cosmic-session updated: 80209d5aad...b5ef6c0c0d
+1
-1
Submodule cosmic-settings updated: bc70106fe5...99cf076229
+1
-1
Submodule cosmic-settings-daemon updated: bb9eb904e8...b5e6d827d5
+1
-1
Submodule cosmic-store updated: 1ec59e7348...8419488a1d
+1
-1
Submodule cosmic-term updated: 2c22dc8afa...44d042f45d
+1
-1
Submodule cosmic-wallpapers updated: 189c2c63d3...3c59953e7e
+1
-1
Submodule cosmic-workspaces-epoch updated: e2e0f09311...3da8907d7a
+2
-2
@@ -34,8 +34,8 @@ https://gitlab.freedesktop.org/wlroots/wlroots/-/wikis/DRM-Debugging documents h
|
||||
|
||||
## Frozen desktop
|
||||
|
||||
If the desktop is frozen and `ctrl+alt+f*` don't work to change to a TTY, [the magic SysRq key](https://www.kernel.org/doc/html/latest/admin-guide/sysrq.html) with `r` can be used to swich input in raw mode, so the kernel will handle the tty switch key binding. /etc/sysctl.conf` or `/etc/sysctl.d` may need to be edited first to set `kernel.sysrq=1` or another value that allows this command.
|
||||
If the desktop is frozen and `ctrl+alt+f*` don't work to change to a TTY, [the magic SysRq key](https://www.kernel.org/doc/html/latest/admin-guide/sysrq.html) with `r` can be used to switch input into raw mode, so the kernel will handle the tty switch key binding. `/etc/sysctl.conf` or `/etc/sysctl.d` may need to be edited first to set `kernel.sysrq=1` or another value that allows this command.
|
||||
|
||||
It is also possible to connect over `ssh` from another computer.
|
||||
|
||||
Then `pidof cosmic-comp` can be used to get the PID of the compositor. Then it is possible to investigate further with tools like `gdb`, using `sudo gdb` then `attach <pid>`.
|
||||
Then `pidof cosmic-comp` can be used to get the PID of the compositor. Then it is possible to investigate further with tools like `gdb`, using `sudo gdb` and then `attach <pid>`.
|
||||
|
||||
@@ -12,20 +12,23 @@ build:
|
||||
{{ just }} cosmic-files/build-release
|
||||
{{ just }} cosmic-greeter/build-release
|
||||
{{ just }} cosmic-idle/build-release
|
||||
{{ just }} cosmic-initial-setup/build-release
|
||||
{{ just }} cosmic-launcher/build-release
|
||||
{{ just }} cosmic-monitor/build-release
|
||||
{{ just }} cosmic-notifications/build-release
|
||||
{{ make }} -C cosmic-osd all
|
||||
{{ just }} cosmic-osd/build-release
|
||||
{{ just }} cosmic-panel/build-release
|
||||
{{ just }} cosmic-player/build-release
|
||||
{{ just }} cosmic-randr/build-release
|
||||
{{ just }} cosmic-screenshot/build-release
|
||||
{{ just }} cosmic-settings/build-release
|
||||
{{ make }} -C cosmic-settings-daemon all
|
||||
{{ just }} cosmic-session/all
|
||||
{{ just }} cosmic-session/build-release
|
||||
{{ just }} cosmic-store/build-release
|
||||
{{ just }} cosmic-term/build-release
|
||||
{{ make }} -C cosmic-wallpapers all
|
||||
{{ make }} -C cosmic-workspaces-epoch all
|
||||
{{ just }} pop-launcher/build-release
|
||||
{{ make }} -C xdg-desktop-portal-cosmic all
|
||||
|
||||
install rootdir="" prefix="/usr/local": build
|
||||
@@ -38,20 +41,23 @@ install rootdir="" prefix="/usr/local": build
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-greeter/install
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-icons/install
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-idle/install
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-initial-setup/install
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-launcher/install
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-monitor/install
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-notifications/install
|
||||
{{ make }} -C cosmic-osd install DESTDIR={{rootdir}} prefix={{prefix}}
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-osd/install
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-panel/install
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-player/install
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-randr/install
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-screenshot/install
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-settings/install
|
||||
{{ make }} -C cosmic-settings-daemon install DESTDIR={{rootdir}} prefix={{prefix}}
|
||||
{{ just }} rootdir={{rootdir}} prefix={{rootdir + prefix}} cosmic-session/install
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-session/install
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-store/install
|
||||
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-term/install
|
||||
{{ make }} -C cosmic-wallpapers install DESTDIR={{rootdir}} prefix={{prefix}}
|
||||
{{ make }} -C cosmic-workspaces-epoch install DESTDIR={{rootdir}} prefix={{prefix}}
|
||||
{{ just }} rootdir={{rootdir}} pop-launcher/install
|
||||
{{ make }} -C xdg-desktop-portal-cosmic install DESTDIR={{rootdir}} prefix={{prefix}}
|
||||
|
||||
_mkdir dir:
|
||||
@@ -78,7 +84,9 @@ clean:
|
||||
{{ just }} cosmic-files/clean
|
||||
rm -rf cosmic-greeter/target
|
||||
{{ just }} cosmic-idle/clean
|
||||
{{ just }} cosmic-initial-setup/clean
|
||||
rm -rf cosmic-launcher/target
|
||||
{{ just }} cosmic-monitor/clean
|
||||
rm -rf cosmic-panel/target
|
||||
rm -rf cosmic-player/target
|
||||
rm -rf cosmic-notifications/target
|
||||
@@ -92,4 +100,5 @@ clean:
|
||||
{{ just }} cosmic-term/clean
|
||||
{{ make }} -C cosmic-wallpapers clean
|
||||
rm -rf cosmic-workspaces-epoch/target
|
||||
{{ just }} pop-launcher/clean
|
||||
rm -rf xdg-desktop-portal-cosmic/target
|
||||
|
||||
Submodule
+1
Submodule pop-launcher added at a332a3a733
+7
-6
@@ -2,14 +2,15 @@
|
||||
|
||||
set -e
|
||||
|
||||
TAG="$1"
|
||||
|
||||
if [ -z "$TAG" ]
|
||||
if [ -z "$1" ]
|
||||
then
|
||||
echo "$0 [tag]" >&2
|
||||
echo "$0 [epoch version]" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
VERSION="$1"
|
||||
TAG="epoch-$1"
|
||||
|
||||
echo "Do you want to tag the current state of cosmic-epoch with the tag $TAG? (y/N)"
|
||||
read answer
|
||||
if [ "$answer" != "y" ]
|
||||
@@ -22,8 +23,8 @@ set -x
|
||||
|
||||
git fetch --recurse-submodules
|
||||
|
||||
git tag --force "$TAG"
|
||||
git submodule foreach git tag --force "$TAG"
|
||||
git tag --force --annotate "$TAG" --message "Epoch ${VERSION}"
|
||||
git submodule foreach git tag --force --annotate "$TAG" --message "Epoch ${VERSION}"
|
||||
|
||||
git push --force origin tag "$TAG"
|
||||
git submodule foreach git push --force origin tag "$TAG"
|
||||
|
||||
Executable
+47
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
# This should be the _next_ epoch version
|
||||
version=1.3.0
|
||||
subject="Epoch ${version} version update"
|
||||
description="Generated by cosmic-epoch scripts/version-update.sh"
|
||||
|
||||
repos=(
|
||||
cosmic-edit
|
||||
cosmic-files
|
||||
cosmic-monitor
|
||||
cosmic-player
|
||||
cosmic-store
|
||||
cosmic-term
|
||||
)
|
||||
|
||||
for repo in "${repos[@]}"
|
||||
do
|
||||
git submodule update --recursive "${repo}"
|
||||
pushd "${repo}"
|
||||
git fetch origin
|
||||
git checkout -B epoch-update origin/master
|
||||
git reset --hard
|
||||
if [ "$(dpkg-parsechangelog --show-field Version)" != "${version}" ]
|
||||
then
|
||||
dch --newversion "${version}" --distribution noble "${subject}"
|
||||
fi
|
||||
cargo set-version "${version}"
|
||||
cargo update
|
||||
git commit -a -m "${subject}" -m "${description}"
|
||||
git push -f -u origin epoch-update
|
||||
pr_url="$(gh pr list --head epoch-update --state open --json url --jq '.[].url')"
|
||||
if [ -n "${pr_url}" ]
|
||||
then
|
||||
echo "PR already open: ${pr_url}"
|
||||
else
|
||||
gh pr create \
|
||||
--title "${subject}" \
|
||||
--body "${description}" \
|
||||
--assignee "@me" \
|
||||
--reviewer "pop-os/engineering" \
|
||||
--reviewer "pop-os/quality-assurance"
|
||||
fi
|
||||
popd
|
||||
done
|
||||
Submodule xdg-desktop-portal-cosmic updated: b655a8ef06...151120e67d
Reference in New Issue
Block a user