merge about and installation into getting-started

This commit is contained in:
outfoxxed 2024-11-08 15:00:34 -08:00
parent 2f88aa46ad
commit 2166b238e2
Signed by: outfoxxed
GPG key ID: 4C88A185FB89301E
6 changed files with 72 additions and 137 deletions

View file

@ -41,8 +41,6 @@ export function groupRoutes(routes: RouteData[]): GroupedRoutes {
const defaultValue = {
tutorials: {
configuration: [
{ name: "About", type: "about" },
{ name: "Installation", type: "installation" },
{ name: "Getting Started", type: "getting-started" },
{ name: "Intro", type: "intro" },
{ name: "Positioning", type: "positioning" },
@ -55,8 +53,6 @@ export function groupRoutes(routes: RouteData[]): GroupedRoutes {
if (!acc.tutorials) {
acc.tutorials = {
configuration: [
{ name: "About", type: "about" },
{ name: "Installation", type: "installation" },
{ name: "Getting Started", type: "getting-started" },
{ name: "Intro", type: "intro" },
{ name: "Positioning", type: "positioning" },

View file

@ -1,65 +0,0 @@
---
layout: "@layouts/ConfigLayout.astro"
title: "About Quickshell"
---
import { Icon } from "astro-icon/components";
# About Quickshell
Quickshell is a framework for building various desktop components, such as *status bars,
docks, panels, and overlays*, collectively known as the desktop shell.
With Quickshell, you can create a desktop shell that is entirely your own.
It can look and feel however you want, to the extent of your ability to
use the [QML](https://doc.qt.io/qt-6/qmlreference.html) language.
We provide a set of [easy to use libraries](/docs/types) for interacting with your
operating system, and *instant config reloading* so you can see your changes in real time,
as shown below.
<video width="100%" preload="metadata" controls>
<source src="/assets/simple-shell-livereload.mp4" type="video/mp4"/>
</video>
> [!NOTE]
> Quickshell is still in a somewhat early stage of development.
> There will be breaking changes before 1.0, however a migration guide will be provided.
# Feature Overview
Quickshell, QtQuick and the QML language provide the following notable features:
- Full customization. You are not limited to a predetermined set of modules.
- Full hot reloading. Your changes will be visible instantly on save.
- A fully reactive language, which means as properties change, all usages
will be re-evaluated. Manual signal usage can be largely avoided.
- Full support for animations, which can be entirely custom.
- Support for GLSL shaders. (further ease of use integrations are in progress)
- Support for third party QML modules.
Quickshell provides operating system integrations for the following features:
- Panel windows (docks, status bars, desktop backgrounds, overlays)
- Wayland compositors require the `zwlr_layer_shell_v1` protocol.
- Many X11 window managers implement struts incorrectly,
causing anchors and exclusive zone not to work as intended.
- Lock screens
- Wayland compositors require the `ext_session_lock_v1` protocol.
- Currently unsupported on X11.
- Popup windows
- Unsupported on lockscreens.
- Clicking outside a popup to dismiss only works under [Hyprland](https://hyprland.org).
- Floating / Normal windows
- Display manager / Login screen (via Greetd)
- Management of other application windows (taskbar)
- Wayland compositors require the `zwlr_foreign_toplevel_management` protocol.
- Currently unsupported on X11.
- System Tray (StatusNotifierItem only, no XEmbed)
- Notification Daemon / Server
- Audio Controls (via PipeWire)
- Media Controls (MPRIS compatible players)
- Battery / power status (via upower)
The following features are planned, but are not yet implemented:
- Bluetooth controls
- Ability to take a screenshot without using an external tool
- Embedded previews of other windows
- Hot reloading of GLSL shaders
- Bundling an optimized version of a configuration as an executable
- Larger set of builtin controls

View file

@ -3,6 +3,68 @@ layout: "@layouts/ConfigLayout.astro"
title: "Getting Started"
---
# {frontmatter.title}
> [!NOTE]
> Quickshell is still in a somewhat early stage of development.
> There will be breaking changes before 1.0, however a migration guide will be provided.
## Installation
All packages currently track quickshell's master branch. This may change in the future.
### Nix
The Quickshell repo has an embedded flake.
You can use either `git+https://git.outfoxxed.me/outfoxxed/quickshell`
or `github:quickshell-mirror/quickshell`.
```nix
{
inputs = {
nixpkgs.url = "nixpkgs/nixos-unstable";
quickshell = {
url = "git+https://git.outfoxxed.me/outfoxxed/quickshell";
# THIS IS IMPORTANT
# Mismatched system dependencies will lead to crashes and other issues.
inputs.nixpkgs.follows = "nixpkgs";
};
};
}
```
The package is available as `quickshell.packages.<system>.default`, which you can add to
`environment.systemPackages` or `home.packages` if you use home-manager.
### Arch
Quickshell is available from the aur by [mcgoth] under
the [quickshell](https://aur.archlinux.org/packages/quickshell) package.
> [!WARNING]
> When using the AUR package, quickshell may break any time Qt is updated.
> The AUR gives us no way to actually fix this, but Quickshell will attempt to
> warn you if it detects a breakage when updating. If warned of a breakage,
> please reinstall the package
Install using the command below:
```sh
yay -S quickshell
```
(or your AUR helper of choice)
### Fedora
Quickshell is available from [errornointernet](https://github.com/errornointernet/)'s
Fedora COPR as [errornointernet/quickshell](https://copr.fedorainfracloud.org/coprs/errornointernet/quickshell).
Install using the command below:
```sh
sudo dnf copr enable errornointernet/quickshell
sudo dnf install quickshell
```
### Manual build
See [BUILD.md](https://git.outfoxxed.me/quickshell/quickshell/src/branch/master/BUILD.md)
for build instructions and configurations.
See [Installation](./installation) if Quickshell isn't installed yet.
## Editor configuration
@ -58,3 +120,7 @@ more correct code should you chose to use it.
> [!NOTE]
> Nix users should note that qmlls will not be able to pick up qml modules
> that are not in `QML2_IMPORT_PATH`.
# Next steps
Create your first configuration by reading the [Intro](./intro).

View file

@ -3,10 +3,9 @@ layout: "@layouts/ConfigLayout.astro"
title: "Configuration"
description: "Configuring the shell"
---
# {frontmatter.title}
import MD_Title from "@components/MD_Title.tsx";
# <MD_Title titleVar={1}> {frontmatter.title} </MD_Title>
See [Getting Started](./configuration/getting-started) for installation and editor configuration instructions.
You should start with the [Introduction](./configuration/intro) which will guide you
through the basics of QML by creating a simple topbar with a clock.

View file

@ -1,65 +0,0 @@
---
layout: "@layouts/ConfigLayout.astro"
title: "Installation"
---
# {frontmatter.title}
> [!NOTE]
> Quickshell is still in a somewhat early stage of development.
> There will be breaking changes before 1.0, however a migration guide will be provided.
All packages currently track quickshell's master branch. This may change in the future.
# Nix
The Quickshell repo has an embedded flake.
You can use either `git+https://git.outfoxxed.me/outfoxxed/quickshell`
or `github:quickshell-mirror/quickshell`.
```nix
{
inputs = {
nixpkgs.url = "nixpkgs/nixos-unstable";
quickshell = {
url = "git+https://git.outfoxxed.me/outfoxxed/quickshell";
# THIS IS IMPORTANT
# Mismatched system dependencies will lead to crashes and other issues.
inputs.nixpkgs.follows = "nixpkgs";
};
};
}
```
The package is available as `quickshell.packages.<system>.default`, which you can add to
`environment.systemPackages` or `home.packages` if you use home-manager.
# Arch
Quickshell is available from the aur by [mcgoth] under
the [quickshell](https://aur.archlinux.org/packages/quickshell) package.
> [!WARNING]
> When using the AUR package, quickshell may break any time Qt is updated.
> The AUR gives us no way to actually fix this, but Quickshell will attempt to
> warn you if it detects a breakage when updating. If warned of a breakage,
> please reinstall the package
Install using the command below:
```sh
yay -S quickshell
```
(or your AUR helper of choice)
# Fedora
Quickshell is available from [errornointernet](https://github.com/errornointernet/)'s
Fedora COPR as [errornointernet/quickshell](https://copr.fedorainfracloud.org/coprs/errornointernet/quickshell).
Install using the command below:
```sh
sudo dnf copr enable errornointernet/quickshell
sudo dnf install quickshell
```
# Manual build
See [BUILD.md](https://git.outfoxxed.me/quickshell/quickshell/src/branch/master/BUILD.md)
for build instructions and configurations.

View file

@ -8,6 +8,10 @@ import MD_Title from "@components/MD_Title.tsx"
# {frontmatter.title}
> [!NOTE]
> This guide was created a long time ago, and is somewhat outdated.
> Take a look at @@Quickshell.SystemClock after going through.
This page will walk you through the process of creating a simple bar/panel, and
introduce you to all the basic concepts involved.