From d808531d6dc4f87896af49c5ecc1f64e90f7a23b Mon Sep 17 00:00:00 2001 From: Penelope Gwen Date: Mon, 3 Jun 2024 15:37:29 -0600 Subject: [PATCH] Initial commit --- .gitlab-ci.yml | 65 +++++++++++++++++++++++++++++++ debian/README.Debian | 6 +++ debian/changelog | 5 +++ debian/control | 17 ++++++++ debian/copyright | 60 ++++++++++++++++++++++++++++ debian/install | 2 + debian/pogmom-sway-base-docs.docs | 1 + debian/postinst | 3 ++ debian/postrm | 3 ++ debian/rules | 4 ++ debian/source/format | 1 + greetd/config.toml | 6 +++ greetd/environments | 2 + greetd/gtkgreet.css | 24 ++++++++++++ greetd/sway-config | 11 ++++++ sway-run | 29 ++++++++++++++ 16 files changed, 239 insertions(+) create mode 100644 .gitlab-ci.yml create mode 100644 debian/README.Debian create mode 100644 debian/changelog create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/install create mode 100644 debian/pogmom-sway-base-docs.docs create mode 100644 debian/postinst create mode 100644 debian/postrm create mode 100755 debian/rules create mode 100644 debian/source/format create mode 100644 greetd/config.toml create mode 100644 greetd/environments create mode 100644 greetd/gtkgreet.css create mode 100644 greetd/sway-config create mode 100755 sway-run diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..f9da97e --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,65 @@ +# Is performed before the scripts in the stages step +before_script: + - source /etc/profile + +# Defines stages which are to be executed +stages: + - build + - upload + - release + +.setup_script: &setup_scripts + - apt-get update + - apt-get -y build-dep . + - apt-get -y install dpkg-dev + +.compile: &compile + stage: compile + only: + - tags + script: + - *setup_scripts + - dpkg-buildpackage -b + - mkdir -p ./build/{release,debug} + - find ../ -name "*.deb" -not -name "*dbgsym*" -exec mv {} ./build/release/ \; + - find ../ -name "*dbgsym*.deb" -exec mv {} ./build/debug/ \; + artifacts: + paths: + - build/release/* + - build/debug/* + untracked: true + +build: + <<: *compile + stage: build + +upload: + stage: upload + dependencies: + - build + only: + - tags + script: + - find ./build/release -name "*.deb" + - debs=( $( find ./build/release -name "*.deb" ) ) + - assets="" + - for d in ${debs[@]};do + - file=$( basename ${d} ) + - url="${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${CI_PROJECT_NAME}/${CI_COMMIT_TAG}/${file}" + - assets="${assets} --assets-link {\"name\":\"${file}\",\"url\":\"${url}\",\"link_type\":\"other\"} " + - "curl --header \"JOB-TOKEN: $CI_JOB_TOKEN\" --upload-file \"${d}\" \"${url}\"" + - done + - echo "ASSETS_ARG=${assets}" >> assets.env + artifacts: + reports: + dotenv: assets.env + +release: + stage: release + image: registry.gitlab.com/gitlab-org/release-cli:latest + only: + - tags + script: + - echo "making release!" + - echo ${ASSETS_ARG} + - release-cli create --name "Release ${CI_COMMIT_TAG}" --tag-name "${CI_COMMIT_TAG}" ${ASSETS_ARG} diff --git a/debian/README.Debian b/debian/README.Debian new file mode 100644 index 0000000..5348141 --- /dev/null +++ b/debian/README.Debian @@ -0,0 +1,6 @@ +pogmom-sway-base for Debian +------------------------ + +Configuration files for sway's supporting programs + + -- Penelope Gwen , Thu, 30 May 2024 17:07:09 -0600 diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..ec86205 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,5 @@ +pogmom-sway-base (0.1) unstable; urgency=medium + + * Initial release. + + -- Penelope Gwen Thu, 3 Jun 2024 14:22:19 -0600 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..a583902 --- /dev/null +++ b/debian/control @@ -0,0 +1,17 @@ +Source: pogmom-sway-base +Section: X11 +Priority: optional +Maintainer: Penelope Gwen +Rules-Requires-Root: no +Build-Depends: + debhelper-compat (= 13), +Standards-Version: 4.7.0 +Homepage: https://git.pogmom.me/pogmommy/pogmom-sway-base + +Package: pogmom-apps +Architecture: all +Depends: + greetd, + gtkgreet +Description: Configuration for pogmom-desktop + This package installs some basic configurations for pogmom-desktop diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..7900151 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,60 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Source: https://git.pogmom.me/pogmommy/pogmom-sway-base +Upstream-Name: pogmom-sway-base +Upstream-Contact: Penelope Gwen + +Files: + * +Copyright: + 2024 Penelope Gwendolyn +License: Opinionated Queer License + PERMISSIONS + . + The creators of this Work (“The Licensor”) grant permission + to any person, group or legal entity that doesn't violate the prohibitions below (“The User”), + to do everything with this Work that would otherwise infringe their copyright or any patent claims, + subject to the following conditions: + . + OBLIGATIONS + . + The User must give appropriate credit to the Licensor, + provide a copy of this license or a (clickable, if the medium allows) link to + oql.avris.it/license/v1.1, + and indicate whether and what kind of changes were made. + The User may do so in any reasonable manner, + but not in any way that suggests the Licensor endorses the User or their use. + . + PROHIBITIONS + . + No one may use this Work for prejudiced or bigoted purposes, including but not limited to: + racism, xenophobia, queerphobia, queer exclusionism, homophobia, transphobia, enbyphobia, misogyny. + . + No one may use this Work to inflict or facilitate violence or abuse of human rights as defined in the + Universal Declaration of Human Rights. + . + No law enforcement, carceral institutions, immigration enforcement entities, military entities or military contractors + may use the Work for any reason. This also applies to any individuals employed by those entities. + . + No business entity where the ratio of pay (salaried, freelance, stocks, or other benefits) + between the highest and lowest individual in the entity is greater than 50 : 1 + may use the Work for any reason. + . + No private business run for profit with more than a thousand employees + may use the Work for any reason. + . + Unless the User has made substantial changes to the Work, + or uses it only as a part of a new work (eg. as a library, as a part of an anthology, etc.), + they are prohibited from selling the Work. + That prohibition includes processing the Work with machine learning models. + . + SANCTIONS + . + If the Licensor notifies the User that they have not complied with the rules of the license, + they can keep their license by complying within 30 days after the notice. + If they do not do so, their license ends immediately. + . + WARRANTY + . + This Work is provided “as is”, without warranty of any kind, express or implied. + The Licensor will not be liable to anyone for any damages related to the Work or this license, + under any kind of legal claim as far as the law allows. diff --git a/debian/install b/debian/install new file mode 100644 index 0000000..e22e925 --- /dev/null +++ b/debian/install @@ -0,0 +1,2 @@ +greetd/* usr/share/greetd/pogmom/ +sway-run /usr/bin/sway-run diff --git a/debian/pogmom-sway-base-docs.docs b/debian/pogmom-sway-base-docs.docs new file mode 100644 index 0000000..86ca00f --- /dev/null +++ b/debian/pogmom-sway-base-docs.docs @@ -0,0 +1 @@ +README.Debian diff --git a/debian/postinst b/debian/postinst new file mode 100644 index 0000000..4e84274 --- /dev/null +++ b/debian/postinst @@ -0,0 +1,3 @@ +#!/bin/bash + +update-alternatives --install /etc/greetd/config.toml greetd /usr/share/greetd/pogmom/config.toml 30 diff --git a/debian/postrm b/debian/postrm new file mode 100644 index 0000000..1b4c991 --- /dev/null +++ b/debian/postrm @@ -0,0 +1,3 @@ +#!/bin/bash + +update-alternatives --remove greetd /usr/share/greetd/pogmom/config.toml diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..2d33f6a --- /dev/null +++ b/debian/rules @@ -0,0 +1,4 @@ +#!/usr/bin/make -f + +%: + dh $@ diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..89ae9db --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (native) diff --git a/greetd/config.toml b/greetd/config.toml new file mode 100644 index 0000000..4758fb1 --- /dev/null +++ b/greetd/config.toml @@ -0,0 +1,6 @@ +[terminal] +vt = 7 + +[default_session] +command = "dbus-run-session -- sway --config /usr/share/greetd/pogmom/sway-config" +user = "_greetd" diff --git a/greetd/environments b/greetd/environments new file mode 100644 index 0000000..bbb2169 --- /dev/null +++ b/greetd/environments @@ -0,0 +1,2 @@ +sway-run +bash diff --git a/greetd/gtkgreet.css b/greetd/gtkgreet.css new file mode 100644 index 0000000..9a773bf --- /dev/null +++ b/greetd/gtkgreet.css @@ -0,0 +1,24 @@ +window { + background-image: url("file:///usr/share/greetd/pogmom/background.jpg"); + background-size: cover; + background-position: center; +} + +label { + color: rgba(250, 250, 250, 1); +} + +box#body { + background-color: rgba(50, 50, 50, 0.5); + border-radius: 10px; + padding: 50px; +} + +entry,combobox * { + background: rgba(50, 50, 50, 1); + color: rgba(250, 250, 250, 1); +} + +entry.text { + color: rgba(250, 250, 250, 1); +} diff --git a/greetd/sway-config b/greetd/sway-config new file mode 100644 index 0000000..bc6f2e6 --- /dev/null +++ b/greetd/sway-config @@ -0,0 +1,11 @@ +exec "gtkgreet -s /usr/share/greetd/pogmom/gtkgreet.css; swaymsg exit" + +default_border pixel 0 + +bindsym Mod4+shift+e exec swaynag \ +-t warning \ +-m 'What do you want to do?' \ +-b 'Poweroff' 'systemctl poweroff' \ +-b 'Reboot' 'systemctl reboot' + +include /etc/sway/config.d/* diff --git a/sway-run b/sway-run new file mode 100755 index 0000000..7fcf3e4 --- /dev/null +++ b/sway-run @@ -0,0 +1,29 @@ +#!/bin/sh + +# Session +export XDG_SESSION_TYPE=wayland +export XDG_SESSION_DESKTOP=sway +export XDG_CURRENT_DESKTOP=sway + +# D-Bus +# If the session bus is not available it is spawned and wrapper round our program +# Otherwise we spawn our program directly +drs= +if [ -z "${DBUS_SESSION_BUS_ADDRESS}" ] +then + drs=dbus-run-session +fi + +# Environment +# Source environmental variable from all files in PATH_ENVIRONMENT +# file should be named *.conf and have KEY=value format use # for comment +PATH_ENVIRONMENT=$HOME/.config/environment.d +if [ -d "$PATH_ENVIRONMENT" ]; then + for i in "$PATH_ENVIRONMENT"/*.conf ; do + if [ -f "$i" ]; then + set -a; . "$i"; set +a + fi + done +fi + +exec ${drs} sway "$@"