mirror of
https://github.com/outbackdingo/hyprcosmic.git
synced 2026-08-25 14:53:21 +00:00
Compare commits
54
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
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 | ||
|
|
b50a37bedb | ||
|
|
f9c45ca65b | ||
|
|
f55b95f67e | ||
|
|
cdc45ee666 | ||
|
|
8e7e5bbc0b | ||
|
|
d5e41502b9 | ||
|
|
0d512c1bf4 | ||
|
|
9093f5ab22 | ||
|
|
e755349b8f | ||
|
|
4af0111f54 | ||
|
|
41df50a547 | ||
|
|
ae00c0f437 | ||
|
|
e2b40599e8 | ||
|
|
8948ce5f7f | ||
|
|
6581855fe0 | ||
|
|
5b02d6db27 | ||
|
|
be97a211e1 | ||
|
|
ba96994e7d | ||
|
|
f8a0f29675 | ||
|
|
85a48f0f53 | ||
|
|
5c4fa4287e | ||
|
|
afcb876be2 | ||
|
|
5ed56ee132 | ||
|
|
2e7a373ff2 | ||
|
|
8145b20798 |
@@ -0,0 +1,30 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve
|
||||
title: ''
|
||||
labels: bug
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Describe the bug**
|
||||
A clear and concise description of what the bug is.
|
||||
|
||||
**To Reproduce**
|
||||
Steps to reproduce the behavior:
|
||||
1. Go to '...'
|
||||
2. Click on '....'
|
||||
3. Scroll down to '....'
|
||||
4. See error
|
||||
|
||||
**Expected behavior**
|
||||
A clear and concise description of what you expected to happen.
|
||||
|
||||
**Screenshots**
|
||||
If applicable, add screenshots to help explain your problem.
|
||||
|
||||
**Desktop (please complete the following information):**
|
||||
- OS: [e.g. Pop!_OS 24.04]
|
||||
|
||||
**Additional context**
|
||||
Add any other context about the problem here.
|
||||
@@ -0,0 +1,61 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: cosmic-applets
|
||||
url: https://github.com/pop-os/cosmic-applets/issues
|
||||
about: Concern all the applets living in the dock or the panel.
|
||||
|
||||
- name: cosmic-comp
|
||||
url: https://github.com/pop-os/cosmic-comp/issues
|
||||
about: Responsible for composing your windows on the screen. If you see issues with the tilling features or your multiple displays, this is likely the place to go.
|
||||
|
||||
- name: cosmic-edit
|
||||
url: https://github.com/pop-os/cosmic-edit/issues
|
||||
about: This is the issue tracker for COSMIC Text Editor. If you see issues with the text editor, report them here.
|
||||
|
||||
- name: cosmic-files
|
||||
url: https://github.com/pop-os/cosmic-files/issues
|
||||
about: This is the issue tracker for COSMIC Files. If you see issues while navigating files, this is the place to go.
|
||||
|
||||
- name: cosmic-settings
|
||||
url: https://github.com/pop-os/cosmic-settings/issues
|
||||
about: This is the issue tracker for COSMIC Settings. If you see issues while changing settings, this is the place to go.
|
||||
|
||||
- name: cosmic-store
|
||||
url: https://github.com/pop-os/cosmic-store/issues
|
||||
about: This is the issue tracker for COSMIC Store. If you see issues with the app store, report them here.
|
||||
|
||||
- name: cosmic-term
|
||||
url: https://github.com/pop-os/cosmic-term/issues
|
||||
about: This is the issue tracker for COSMIC Terminal. If you see issues with the terminal, report them here.
|
||||
|
||||
- name: cosmic-panel
|
||||
url: https://github.com/pop-os/cosmic-panel/issues
|
||||
about: Contains the code to manage the dock and panel applets. You can see it as the compositor of applets. It is also responsible to draw the panel and dock at the right place (bottom, left, ect..).
|
||||
|
||||
- name: cosmic-screenshot
|
||||
url: https://github.com/pop-os/cosmic-screenshot/issues
|
||||
about: This is the tool that help you take screenshots.
|
||||
|
||||
- name: cosmic-workspaces-epoch
|
||||
url: https://github.com/pop-os/cosmic-workspaces-epoch/issues
|
||||
about: Responsible for the workspace overview. If you have an issue with workspaces, this is the place to go.
|
||||
|
||||
- name: cosmic-greeter
|
||||
url: https://github.com/pop-os/cosmic-greeter/issues
|
||||
about: When your session is locked, or not opened yet, this is the window that will be shown. Basically the login screen.
|
||||
|
||||
- name: cosmic-osd
|
||||
url: https://github.com/pop-os/cosmic-osd/issues
|
||||
about: Cosmic on screen display. This is for example, the audio notification when you change the volume, or the brightness one.
|
||||
|
||||
- name: cosmic-applibrary
|
||||
url: https://github.com/pop-os/cosmic-applibrary/issues
|
||||
about: It is the application launched with super-a, that let you see what app are in your system, and launch them.
|
||||
|
||||
- name: cosmic-launcher
|
||||
url: https://github.com/pop-os/cosmic-launcher/issues
|
||||
about: Launched with the super key. It lets you search in your application, and display the result in a list.
|
||||
|
||||
- name: cosmic-bg
|
||||
url: https://github.com/pop-os/cosmic-bg/issues
|
||||
about: If you notice issues with the wallpaper, this is the place to go.
|
||||
@@ -0,0 +1,20 @@
|
||||
---
|
||||
name: Feature request
|
||||
about: Suggest an idea for this project
|
||||
title: ''
|
||||
labels: enhancement
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Is your feature request related to a problem? Please describe.**
|
||||
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
||||
|
||||
**Describe the solution you'd like**
|
||||
A clear and concise description of what you want to happen.
|
||||
|
||||
**Describe alternatives you've considered**
|
||||
A clear and concise description of any alternative solutions or features you've considered.
|
||||
|
||||
**Additional context**
|
||||
Add any other context or screenshots about the feature request here.
|
||||
+12
@@ -94,3 +94,15 @@
|
||||
path = cosmic-idle
|
||||
url = https://github.com/pop-os/cosmic-idle.git
|
||||
branch = master
|
||||
[submodule "cosmic-player"]
|
||||
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
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
# COSMIC Desktop
|
||||
|
||||
Currently an incomplete **alpha**. Testing instructions below for various distributions.
|
||||
|
||||
Currently in **beta** for Epoch 1 (the first release), which is nearly feature-complete and in the final bug fixing stage. Testing instructions for various distributions are below.
|
||||
|
||||
## Components of COSMIC Desktop
|
||||
* [cosmic-applets](https://github.com/pop-os/cosmic-applets)
|
||||
@@ -12,10 +11,13 @@ Currently an incomplete **alpha**. Testing instructions below for various distri
|
||||
* [cosmic-files](https://github.com/pop-os/cosmic-files)
|
||||
* [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-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)
|
||||
* [cosmic-player](https://github.com/pop-os/cosmic-player)
|
||||
* [cosmic-randr](https://github.com/pop-os/cosmic-randr)
|
||||
* [cosmic-screenshot](https://github.com/pop-os/cosmic-screenshot)
|
||||
* [cosmic-session](https://github.com/pop-os/cosmic-session)
|
||||
@@ -34,99 +36,41 @@ 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
|
||||
## Installing on Pop!\_OS
|
||||
|
||||
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):
|
||||
COSMIC DE is in its first beta release. We're in a bug fixing stage of development with features largely complete for the first release. Using and testing the beta is welcome.
|
||||
|
||||
- [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
|
||||
### Pop!\_OS 24.04 Beta
|
||||
|
||||
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
|
||||
The recommended way to test COSMIC Epoch on Pop!\_OS is by using the Pop!\_OS 24.04 LTS Beta release. There are two ways to get the 24.04 Beta:
|
||||
|
||||
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.
|
||||
- Install it from the [latest Beta 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.
|
||||
|
||||
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
|
||||
```
|
||||
Pop!\_OS 24.04 Beta 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 Beta, 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. Join the COSMIC Epoch channel.
|
||||
|
||||
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
|
||||
```
|
||||
### Pop!\_OS 22.04
|
||||
|
||||
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
|
||||
```
|
||||
Due to dependency requirements, **COSMIC Epoch is no longer receiving updates on Pop!\_OS 22.04 LTS.** It's no longer recommended to test COSMIC Epoch on Pop!\_OS 22.04 because the latest bug fixes and features are only available on newer distributions such as Pop!\_OS 24.04.
|
||||
|
||||
### Testing
|
||||
|
||||
The easiest way to test COSMIC DE currently is by building a systemd system extension (see `man systemd-sysext`).
|
||||
Individual COSMIC applications work in the default GNOME session of Pop!\_OS 22.04. You can install individual COSMIC applications using the following command:
|
||||
|
||||
```
|
||||
git clone --recurse-submodules https://github.com/pop-os/cosmic-epoch
|
||||
cd cosmic-epoch
|
||||
just sysext
|
||||
sudo apt install cosmic-edit cosmic-files cosmic-player cosmic-store cosmic-term
|
||||
```
|
||||
|
||||
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.
|
||||
#### Old Release on 22.04
|
||||
|
||||
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).
|
||||
An **older release** of the COSMIC Epoch desktop environment alpha is still available on Pop!\_OS 22.04 LTS. If you encounter bugs while testing COSMIC Epoch on Pop!\_OS 22.04, please check if they exist in Pop!\_OS 24.04 before reporting them. You can install the older release on 22.04 with these instructions:
|
||||
|
||||
```shell
|
||||
sudo setenforce 0
|
||||
sudo systemctl restart gdm
|
||||
```
|
||||
##### Enable Wayland
|
||||
|
||||
**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.
|
||||
|
||||
#### Enable Wayland
|
||||
`sudo nano /etc/gdm3/custom.conf`
|
||||
|
||||
Change `WaylandEnable` to `true`:
|
||||
@@ -136,7 +80,7 @@ WaylandEnable=true
|
||||
|
||||
Reboot for this change to take effect.
|
||||
|
||||
#### Update udev rules for NVIDIA users
|
||||
##### Update udev rules for NVIDIA users
|
||||
|
||||
```shell
|
||||
sudo nano /usr/lib/udev/rules.d/61-gdm.rules
|
||||
@@ -160,7 +104,8 @@ Restart gdm
|
||||
sudo systemctl restart gdm
|
||||
```
|
||||
|
||||
#### Install COSMIC
|
||||
##### Install COSMIC
|
||||
|
||||
`sudo apt install cosmic-session`
|
||||
|
||||
After logging out, click on your user and there will be a sprocket at the bottom right. Change the setting to COSMIC. Proceed to log in.
|
||||
@@ -173,16 +118,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
|
||||
@@ -199,10 +170,167 @@ COSMIC can be installed on Gentoo via a custom overlay. Add the overlay using yo
|
||||
|
||||
Next, install the COSMIC desktop environment and its associated themes:
|
||||
|
||||
`emerge -1 cosmic-meta pop-theme-meta -pv`
|
||||
`emerge cosmic-meta pop-theme-meta`
|
||||
|
||||
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 [Overlay Repository](https://github.com/fsvm88/cosmic-overlay).
|
||||
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 still a work-in-progress and thus does not follow a versioning scheme yet.
|
||||
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 beta release are tagged `epoch-1.0.0-beta.X.Y`, where `X` is the beta release and `Y` is the minor 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/)
|
||||
|
||||
+1
-1
Submodule cosmic-applets updated: 104a608cf1...51cd763ca8
+1
-1
Submodule cosmic-applibrary updated: 676656da1e...d06546837b
+1
-1
Submodule cosmic-bg updated: fd44edf79b...3d1ec12ce7
+1
-1
Submodule cosmic-comp updated: e3b41c5c55...fa88002ba4
+1
-1
Submodule cosmic-edit updated: 86bcadb9e7...5c2cb022cf
+1
-1
Submodule cosmic-files updated: 2fa8e6adc4...e65529dcfc
+1
-1
Submodule cosmic-greeter updated: 39de757846...d5c4746a5a
+1
-1
Submodule cosmic-icons updated: 3fdc2175c1...cd30ffd509
+1
-1
Submodule cosmic-idle updated: eaa09a6fef...983d34ad96
Submodule
+1
Submodule cosmic-initial-setup added at 32a9cd9a22
+1
-1
Submodule cosmic-launcher updated: 9324e9e777...2fefe2d50c
+1
-1
Submodule cosmic-notifications updated: d4d5f42933...090841802c
+1
-1
Submodule cosmic-osd updated: 7eedda7be0...4a3d2b4aa3
+1
-1
Submodule cosmic-panel updated: 734e3fafe2...8eb8a1b630
Submodule
+1
Submodule cosmic-player added at 29c8fb3675
+1
-1
Submodule cosmic-randr updated: 311b944d3f...f5923d1ef5
+1
-1
Submodule cosmic-screenshot updated: 031eb66861...f74d6695f0
+1
-1
Submodule cosmic-session updated: 87a0644435...f4093070be
+1
-1
Submodule cosmic-settings updated: d01e0d85fb...7965d39f7e
+1
-1
Submodule cosmic-settings-daemon updated: f079ab7f98...2753b60609
+1
-1
Submodule cosmic-store updated: 9885eee8e7...f57c864f06
+1
-1
Submodule cosmic-term updated: 77be96e1c2...26b1f51362
+1
-1
Submodule cosmic-wallpapers updated: cb8e6d653b...189c2c63d3
+1
-1
Submodule cosmic-workspaces-epoch updated: 70d6c415a1...954a45ca4c
+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,10 +12,12 @@ 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-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
|
||||
@@ -25,6 +27,7 @@ build:
|
||||
{{ 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
|
||||
@@ -37,19 +40,22 @@ 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-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:
|
||||
@@ -76,8 +82,10 @@ clean:
|
||||
{{ just }} cosmic-files/clean
|
||||
rm -rf cosmic-greeter/target
|
||||
{{ just }} cosmic-idle/clean
|
||||
{{ just }} cosmic-initial-setup/clean
|
||||
rm -rf cosmic-launcher/target
|
||||
rm -rf cosmic-panel/target
|
||||
rm -rf cosmic-player/target
|
||||
rm -rf cosmic-notifications/target
|
||||
rm -rf cosmic-osd/target
|
||||
rm -rf cosmic-randr/target
|
||||
@@ -89,4 +97,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 eead361cca
Submodule xdg-desktop-portal-cosmic updated: e7c92a7316...28fe74bade
Reference in New Issue
Block a user