Compare commits

...
Author SHA1 Message Date
Jacob Kauffmann e16b582f54 docs: Update README verbiage & add translation info 2025-09-26 09:30:35 -06:00
Jeremy Soller a07aecf6a2 Minor beta fixes 2025-09-25 06:51:28 -06:00
Carl RichellandGitHub 534c1c132f Update README.md for beta
Also added cosmic-initial-setup
2025-09-23 18:01:27 -06:00
Jeremy Soller 547479a1c5 Add pop-launcher 2025-09-19 14:56:00 -06:00
Jeremy Soller 5c1ab6d9eb Add cosmic-initial-setup 2025-09-19 14:38:51 -06:00
Jeremy Soller 55489ceffb Update cosmic-notifications 2025-09-19 14:34:24 -06:00
Jeremy Soller efe2106ca2 Update xdg-desktop-potal-cosmic 2025-09-19 11:36:17 -06:00
Jeremy Soller b6011670e3 Minor translation updates 2025-09-19 11:34:23 -06:00
Jeremy Soller c4cd5a4950 Update submodules to prepare for beta tag 2025-09-19 11:15:22 -06:00
Pratham PatelandJeremy Soller 9e13a3e47a readme: add install instructions for NixOS users 2025-05-18 10:32:28 -06:00
Jeremy Soller b50a37bedb Update cosmic-session 2025-04-24 10:07:31 -06:00
Jeremy Soller f9c45ca65b Prepare for alpha 7 2025-04-24 09:18:22 -06:00
Harshit VijayandGitHub f55b95f67e Add cosmic-idle to README components list (#1770)
Added cosmic-idle component reference link
2025-04-04 16:53:20 -06:00
Levi PortenierandGitHub cdc45ee666 Merge pull request #1199 from boswelja/issue-picker
Add issue templates & links to other repos
2025-03-26 09:10:24 -06:00
Jacob KauffmannandMichael Murphy 8e7e5bbc0b Update Pop!_OS testing info 2025-03-10 17:45:01 +01:00
Jeremy Soller d5e41502b9 Submodule updates 2025-02-21 08:11:32 -07:00
Jeremy Soller 0d512c1bf4 Prepare for alpha 6 2025-02-20 10:54:07 -07:00
Jeremy Soller 9093f5ab22 Update cosmic-settings 2025-01-14 14:51:39 -07:00
Jeremy Soller e755349b8f Update cosmic-settings 2025-01-14 14:12:34 -07:00
Jeremy Soller 4af0111f54 Update submodules 2025-01-14 14:03:31 -07:00
Jeremy Soller 41df50a547 Translation updates 2025-01-14 12:27:36 -07:00
Jeremy Soller ae00c0f437 Prepare for alpha 5.1 2025-01-14 10:18:01 -07:00
Jeremy Soller e2b40599e8 Update cosmic-player 2025-01-09 11:56:21 -07:00
Jeremy Soller 8948ce5f7f Update repositories prior to alpha 5 tag 2025-01-09 11:03:59 -07:00
Jeremy Soller 6581855fe0 Add cosmic-player 2025-01-09 10:43:58 -07:00
Hadi ChokrandGitHub 5b02d6db27 chore: add wiki entry to the Gentoo instructions 2024-12-16 22:57:14 +01:00
Jeremy Soller 8e2534b6fd Update for COSMIC alpha 4 2024-12-04 17:27:19 -07:00
Jack BoswellandGitHub be97a211e1 Update config.yml 2024-11-04 09:32:21 +11:00
Jeremy Soller c3f368d550 Update for COSMIC alpha 3 2024-10-31 14:04:01 -06:00
Jeremy Soller 2738786dbf Add cosmic-idle 2024-10-31 11:21:15 -06:00
Jack BoswellandGitHub ba96994e7d Update config.yml 2024-10-31 23:10:24 +11:00
Jack BoswellandGitHub f8a0f29675 Update bug_report.md 2024-10-31 22:12:02 +11:00
Jack BoswellandGitHub 85a48f0f53 Update config.yml 2024-10-31 22:07:29 +11:00
Jack BoswellandGitHub 5c4fa4287e Update issue templates 2024-10-31 22:06:55 +11:00
Jack BoswellandGitHub afcb876be2 Merge pull request #2 from boswelja/boswelja-patch-1
Create config.yml
2024-10-31 22:04:46 +11:00
Jack BoswellandGitHub 5ed56ee132 Merge pull request #1 from boswelja/boswelja-patch-2
Update issue templates
2024-10-31 22:04:23 +11:00
Jack BoswellandGitHub 2e7a373ff2 Update issue templates 2024-10-31 22:04:15 +11:00
Jack BoswellandGitHub 8145b20798 Create config.yml 2024-10-31 22:03:12 +11:00
Jeremy Soller 7bb54b437c Add cosmic-wallpapers 2024-09-26 16:44:53 -06:00
Jeremy Soller f39c9d9fcc Update submodules 2024-09-24 09:28:58 -06:00
e3dd8940f2 Clarify GDM configuration changes
Signed-off-by: Tristan Andrus <[email protected]>
Co-authored-by: Tristan Andrus <[email protected]>
2024-08-30 03:30:53 +02:00
Rerum02andGitHub 076413d967 Add openSUSE Tumbleweed 2024-08-30 03:29:50 +02:00
Hadi ChokrandMichael Murphy d1958ed24c Add Gentoo Linux Install Instructions
Overlays in Gentoo are like the AUR on Arch since the package is currently only avaible on an Overlay repo i added the instructions if the packge gets mobed in to the offical gentoo repo, i will update the instructions.
2024-08-30 03:27:06 +02:00
Jacob Kauffmann 601f4e21c5 Update conjugation to match new sentence 2024-08-27 15:18:27 -06:00
killertofusandJacob Kauffmann 64afee56e4 fixed a grammar error 2024-08-27 15:18:27 -06:00
killertofusandJacob Kauffmann 9fa57ff542 fixed a error 2024-08-27 15:18:27 -06:00
killertofusandJacob Kauffmann 69ba4a56fa it's out of the aur 2024-08-27 15:18:27 -06:00
Jacob KauffmannandJeremy Soller 8ddb4bbe6a Update additional wording from pre-alpha to alpha 2024-08-13 10:01:21 -06:00
CraftandJeremy Soller ff1afea5aa Update README.md updating pre-alpha to alpha since Pop!_OS has released the alpha. 2024-08-13 10:01:21 -06:00
Jeremy Soller 0b34a971b5 Update cosmic-settings 2024-08-05 10:16:25 -06:00
Jeremy Soller 11e25b3b85 Add script for tagging 2024-08-05 10:13:08 -06:00
Jeremy Soller dd6f8864ee Update submodules 2024-08-05 09:33:33 -06:00
SnêuandGitHub 23ce305735 bump submodules 2024-07-29 19:04:09 +02:00
Ian Douglas ScottandVictoria Brekenfeld 22e5cf3801 Add a DEBUGGING.md file with some information useful for debugging
I have included information about various things I've used for debugging
COSMIC. More could definitely be added.

It seems good to have some central resource for this. Though not
everything listed here is very straightforward to use.
2024-07-26 11:03:37 +02:00
34 changed files with 384 additions and 86 deletions
+30
View File
@@ -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.
+61
View File
@@ -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.
+20
View File
@@ -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.
+20
View File
@@ -86,3 +86,23 @@
path = cosmic-store path = cosmic-store
url = https://github.com/pop-os/cosmic-store.git url = https://github.com/pop-os/cosmic-store.git
branch = master branch = master
[submodule "cosmic-wallpapers"]
path = cosmic-wallpapers
url = https://github.com/pop-os/cosmic-wallpapers.git
branch = master
[submodule "cosmic-idle"]
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
+142 -65
View File
@@ -1,7 +1,6 @@
# COSMIC Desktop # COSMIC Desktop
Currently an incomplete **pre-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 ## Components of COSMIC Desktop
* [cosmic-applets](https://github.com/pop-os/cosmic-applets) * [cosmic-applets](https://github.com/pop-os/cosmic-applets)
@@ -12,10 +11,13 @@ Currently an incomplete **pre-alpha**. Testing instructions below for various di
* [cosmic-files](https://github.com/pop-os/cosmic-files) * [cosmic-files](https://github.com/pop-os/cosmic-files)
* [cosmic-greeter](https://github.com/pop-os/cosmic-greeter) * [cosmic-greeter](https://github.com/pop-os/cosmic-greeter)
* [cosmic-icons](https://github.com/pop-os/cosmic-icons) * [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-launcher](https://github.com/pop-os/cosmic-launcher)
* [cosmic-notifications](https://github.com/pop-os/cosmic-notifications) * [cosmic-notifications](https://github.com/pop-os/cosmic-notifications)
* [cosmic-osd](https://github.com/pop-os/cosmic-osd) * [cosmic-osd](https://github.com/pop-os/cosmic-osd)
* [cosmic-panel](https://github.com/pop-os/cosmic-panel) * [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-randr](https://github.com/pop-os/cosmic-randr)
* [cosmic-screenshot](https://github.com/pop-os/cosmic-screenshot) * [cosmic-screenshot](https://github.com/pop-os/cosmic-screenshot)
* [cosmic-session](https://github.com/pop-os/cosmic-session) * [cosmic-session](https://github.com/pop-os/cosmic-session)
@@ -34,9 +36,138 @@ Currently an incomplete **pre-alpha**. Testing instructions below for various di
* [cosmic-text](https://github.com/pop-os/cosmic-text) * [cosmic-text](https://github.com/pop-os/cosmic-text)
* [cosmic-theme](https://github.com/pop-os/cosmic-theme) * [cosmic-theme](https://github.com/pop-os/cosmic-theme)
* [cosmic-time](https://github.com/pop-os/cosmic-time) * [cosmic-time](https://github.com/pop-os/cosmic-time)
### COSMIC toolkit for apps and applets
* [libcosmic](https://github.com/pop-os/libcosmic) * [libcosmic](https://github.com/pop-os/libcosmic)
## Setup on distributions without packaging of cosmic components ## Installing on Pop!\_OS
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.
### Pop!\_OS 24.04 Beta
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:
- 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.
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.
### Pop!\_OS 22.04
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.
Individual COSMIC applications work in the default GNOME session of Pop!\_OS 22.04. You can install individual COSMIC applications using the following command:
```
sudo apt install cosmic-edit cosmic-files cosmic-player cosmic-store cosmic-term
```
#### Old Release on 22.04
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:
##### Enable Wayland
`sudo nano /etc/gdm3/custom.conf`
Change `WaylandEnable` to `true`:
```
WaylandEnable=true
```
Reboot for this change to take effect.
##### Update udev rules for NVIDIA users
```shell
sudo nano /usr/lib/udev/rules.d/61-gdm.rules
```
Look for `LABEL="gdm_prefer_xorg"` and `LABEL="gdm_disable_wayland"`. Add `#` to the `RUN` statements so they look like this:
```
LABEL="gdm_prefer_xorg"
#RUN+="/usr/libexec/gdm-runtime-config set daemon PreferredDisplayServer xorg"
GOTO="gdm_end"
LABEL="gdm_disable_wayland"
#RUN+="/usr/libexec/gdm-runtime-config set daemon WaylandEnable false"
GOTO="gdm_end"
```
Restart gdm
```shell
sudo systemctl restart gdm
```
##### 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.
## Installing on Arch Linux
Install via [cosmic-session](https://archlinux.org/packages/extra/x86_64/cosmic-session/) or the [cosmic](https://archlinux.org/groups/x86_64/cosmic/) group, e.g.:
`pacman -S cosmic-session` or `pacman -S cosmic`
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 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.
```
dnf copr enable ryanabx/cosmic-epoch
dnf install cosmic-desktop
```
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/).
## 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 login manager
services.displayManager.cosmic-greeter.enable = true;
# Enable the COSMIC DE itself
services.desktopManager.cosmic.enable = true;
# Enable XWayland support in COSMIC
services.desktopManager.cosmic.xwayland.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 in the [NixOS 25.05 release notes](https://nixos.org/manual/nixos/unstable/release-notes#sec-release-25.05).
## Installing on openSUSE tumbleweed
Cosmic can be installed by adding X11:COSMIC:Factory repo with opi.
```
opi patterns-cosmic
```
Select X11:COSMIC:Factory, after installing keep the repo.
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 [OBS page](https://build.opensuse.org/project/show/X11:COSMIC:Factory).
## 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`
Next, install the COSMIC desktop environment and its associated themes:
`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 [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 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): (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):
@@ -91,9 +222,9 @@ cd cosmic-epoch
just sysext just sysext
``` ```
This will create a system-extension called `cosmic-sysext`, that you can move (without renaming!) into e.g. `/var/lib/extensions`. 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, 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. 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. 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). To test COSMIC, you can temporarily disable it and restart `gdm` (note that this will close your running programs).
@@ -109,7 +240,7 @@ It also requires the previously mentioned libraries/dependencies at runtime to b
**Read-Only Filesystem**: If you're not on an immutable distro you may notice that `/usr/` and `/opt/` are read-only. **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`) 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. It is thus not a proper method for long term deployment.
### Packaging ### Packaging
@@ -118,67 +249,13 @@ These and the `justfile` inside this repository may be used as references on how
### Versioning ### Versioning
COSMIC DE is very much still work-in-progress and thus does not follow a versioning scheme so far. 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). 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.
Notes on versioning and packaging all these components together properly will be added at a later stage once COSMIC DE gets its first release. ## Translating
## Installing on Pop!_OS To submit translations for COSMIC in your language, please use Weblate: https://hosted.weblate.org/projects/pop-os/
COSMIC DE is near its first alpha release. Using and testing the pre-alpha is welcome. Bugs and breakage are expected.
#### Enable Wayland
`sudo nano /etc/gdm3/custom.conf`
Change to true
WaylandEnable=true
Reboot for this change to take effect.
#### Update udev rules for NVIDIA users
```shell
sudo nano /usr/lib/udev/rules.d/61-gdm.rules
```
Look for `LABEL="gdm_prefer_xorg"` and `LABEL="gdm_disable_wayland"`, add `#` to the `RUN` statement so it will look like this
```
LABEL="gdm_prefer_xorg"
#RUN+="/usr/libexec/gdm-runtime-config set daemon PreferredDisplayServer xorg"
GOTO="gdm_end"
LABEL="gdm_disable_wayland"
#RUN+="/usr/libexec/gdm-runtime-config set daemon WaylandEnable false"
GOTO="gdm_end"
```
Restart gdm
```shell
sudo systemctl restart gdm
```
#### 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.
## Installing on Arch Linux
Installing via the preferred AUR helper is possible the usual way, e.g.:
`paru -S cosmic-session-git` or `yay -S cosmic-session-git`
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 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.
```
dnf copr enable ryanabx/cosmic-epoch
dnf install cosmic-desktop
```
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/).
## Contact ## Contact
- [Mattermost](https://chat.pop-os.org/) - [Mattermost](https://chat.pop-os.org/)
Submodule
+1
Submodule cosmic-idle added at 267bb837f1
Submodule
+1
Submodule cosmic-player added at 7b204a05c3
+1
Submodule cosmic-wallpapers added at 189c2c63d3
+41
View File
@@ -0,0 +1,41 @@
Debugging COSMIC
================
An assortment of useful tools and settings for debugging COSMIC.
## Logs
Cosmic-comp, cosmic-panel, and other components log to `stderr`, as well as journald (if present).
## Wayland and X11 Protocols
Run clients with `WAYLAND_DEBUG=1` to see what wayland calls are made. `xtrace -n <command>` can be used to see what X calls an X11 client is making.
## XWayland
A tool like `xprop` can be used to determine if an application is running in XWayland. If `xprop` is unable to select a window, it is a native Wayland window.
## Performance
`sudo perf top` can be used to see what functions, across all processes, are using the most CPU time. The `-p` argument can be used to restrict this to a single process. The output is more useful for executables with debug symbols.
`cosmic-comp` integrates Tracy for profiling. It can be built with `cargo build --features profile-with-tracy --profile fastdebug`, then the Tracy client can connect from the same system or a different one
## Graphics drivers
`eglinfo` and `vulkaninfo` indicate what graphics cards and drivers are in use for hardware-accelerated rendering.
On systems with NVIDIA graphics, `nvidia-smi` has information about the GPU and driver.
## DRM
The Linux DRM subsystem handles graphics cards and display controllers.
`drm_info` prints information about the outputs, planes, etc. associated with each GPU and their properties. The output of this command can be useful for understanding display related issues.
https://gitlab.freedesktop.org/wlroots/wlroots/-/wikis/DRM-Debugging documents how to configure DRM to enable additional logging, which can be useful for understanding some DRM driver issues.
## 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.
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>`.
+15
View File
@@ -11,10 +11,13 @@ build:
{{ just }} cosmic-edit/build-release {{ just }} cosmic-edit/build-release
{{ just }} cosmic-files/build-release {{ just }} cosmic-files/build-release
{{ just }} cosmic-greeter/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-launcher/build-release
{{ just }} cosmic-notifications/build-release {{ just }} cosmic-notifications/build-release
{{ make }} -C cosmic-osd all {{ make }} -C cosmic-osd all
{{ just }} cosmic-panel/build-release {{ just }} cosmic-panel/build-release
{{ just }} cosmic-player/build-release
{{ just }} cosmic-randr/build-release {{ just }} cosmic-randr/build-release
{{ just }} cosmic-screenshot/build-release {{ just }} cosmic-screenshot/build-release
{{ just }} cosmic-settings/build-release {{ just }} cosmic-settings/build-release
@@ -22,7 +25,9 @@ build:
{{ just }} cosmic-session/all {{ just }} cosmic-session/all
{{ just }} cosmic-store/build-release {{ just }} cosmic-store/build-release
{{ just }} cosmic-term/build-release {{ just }} cosmic-term/build-release
{{ make }} -C cosmic-wallpapers all
{{ make }} -C cosmic-workspaces-epoch all {{ make }} -C cosmic-workspaces-epoch all
{{ just }} pop-launcher/build-release
{{ make }} -C xdg-desktop-portal-cosmic all {{ make }} -C xdg-desktop-portal-cosmic all
install rootdir="" prefix="/usr/local": build install rootdir="" prefix="/usr/local": build
@@ -34,10 +39,13 @@ install rootdir="" prefix="/usr/local": build
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-files/install {{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-files/install
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-greeter/install {{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-greeter/install
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-icons/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-launcher/install
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-notifications/install {{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-notifications/install
{{ make }} -C cosmic-osd install DESTDIR={{rootdir}} prefix={{prefix}} {{ make }} -C cosmic-osd install DESTDIR={{rootdir}} prefix={{prefix}}
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-panel/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-randr/install
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-screenshot/install {{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-screenshot/install
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-settings/install {{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-settings/install
@@ -45,7 +53,9 @@ install rootdir="" prefix="/usr/local": build
{{ just }} rootdir={{rootdir}} prefix={{rootdir + prefix}} cosmic-session/install {{ just }} rootdir={{rootdir}} prefix={{rootdir + prefix}} cosmic-session/install
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-store/install {{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-store/install
{{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-term/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}} {{ make }} -C cosmic-workspaces-epoch install DESTDIR={{rootdir}} prefix={{prefix}}
{{ just }} rootdir={{rootdir}} prefix={{prefix}} pop-launcher/install
{{ make }} -C xdg-desktop-portal-cosmic install DESTDIR={{rootdir}} prefix={{prefix}} {{ make }} -C xdg-desktop-portal-cosmic install DESTDIR={{rootdir}} prefix={{prefix}}
_mkdir dir: _mkdir dir:
@@ -71,8 +81,11 @@ clean:
rm -rf cosmic-edit/target rm -rf cosmic-edit/target
{{ just }} cosmic-files/clean {{ just }} cosmic-files/clean
rm -rf cosmic-greeter/target rm -rf cosmic-greeter/target
{{ just }} cosmic-idle/clean
{{ just }} cosmic-initial-setup/clean
rm -rf cosmic-launcher/target rm -rf cosmic-launcher/target
rm -rf cosmic-panel/target rm -rf cosmic-panel/target
rm -rf cosmic-player/target
rm -rf cosmic-notifications/target rm -rf cosmic-notifications/target
rm -rf cosmic-osd/target rm -rf cosmic-osd/target
rm -rf cosmic-randr/target rm -rf cosmic-randr/target
@@ -82,5 +95,7 @@ clean:
rm -rf cosmic-session/target rm -rf cosmic-session/target
{{ just }} cosmic-store/clean {{ just }} cosmic-store/clean
{{ just }} cosmic-term/clean {{ just }} cosmic-term/clean
{{ make }} -C cosmic-wallpapers clean
rm -rf cosmic-workspaces-epoch/target rm -rf cosmic-workspaces-epoch/target
{{ just }} pop-launcher/clean
rm -rf xdg-desktop-portal-cosmic/target rm -rf xdg-desktop-portal-cosmic/target
Submodule
+1
Submodule pop-launcher added at 8d9da92dba
Executable
+29
View File
@@ -0,0 +1,29 @@
#!/usr/bin/env bash
set -e
TAG="$1"
if [ -z "$TAG" ]
then
echo "$0 [tag]" >&2
exit 1
fi
echo "Do you want to tag the current state of cosmic-epoch with the tag $TAG? (y/N)"
read answer
if [ "$answer" != "y" ]
then
echo "Did not answer y, exiting" >&2
exit 1
fi
set -x
git fetch --recurse-submodules
git tag --force "$TAG"
git submodule foreach git tag --force "$TAG"
git push --force origin tag "$TAG"
git submodule foreach git push --force origin tag "$TAG"