• Stars
    star
    783
  • Rank 58,097 (Top 2 %)
  • Language
    JavaScript
  • License
    GNU General Publi...
  • Created almost 8 years ago
  • Updated 9 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

i3 + Plasma: using the i3 window manager on the top of KDE Plasma and other dotfiles, configurations, scripts, workarounds and practises from my Debian Sid machines.

dotfiles

Here you can find the configuration files and a detailed guide to use the i3 window manager on the top of KDE Plasma desktop environment without relying on any kind of "integration" packages.

...as always: If this eats your cat or starts a global thermonuclear war, you are on your own.

Screenshot

More screenshots

The rest of my configuration and dotfiles are described and documented in config.md.

Requirements

You will need the following things:

  • A working Plasma environement (just follow the instructions on how to install Plasma for your distro);
  • i3 or i3-gaps;
  • feh or nitrogen for setting the desktop background.

And optionally:

  • A compositor like picom, for V Sync and transparency effects. You may want a version built from their git repo for stuff like blurring.

Create a new X Session file

As root (or with sudo) create a new file called plasma-i3.desktop in /usr/share/xsessions/ with the following content:

[Desktop Entry]
Type=XSession
Exec=env KDEWM=/usr/bin/i3 /usr/bin/startplasma-x11
DesktopNames=KDE
Name=Plasma i3 session
Comment=Plasma i3 session

This will add a new available session in your login manager.

Add some stuff in the i3 configuration

Next, add the following lines in your i3 configuration (~/.config/i3/config):

# Kill the wallpaper window set by Plasma*
for_window [title="Desktop — Plasma"] kill; floating enable; border none

# Set Plasma dialogs and pop ups as floating so they won't get tiled
for_window [window_role="pop-up"] floating enable
for_window [window_role="task_dialog"] floating enable
for_window [class="systemsettings"] floating enable
for_window [class="plasmashell"] floating enable;
for_window [class="Plasma"] floating enable; border none
for_window [title="plasma-desktop"] floating enable; border none
for_window [class="krunner"] floating enable; border none
for_window [class="Kmix"] floating enable; border none
for_window [class="Klipper"] floating enable; border none
for_window [class="Plasmoidviewer"] floating enable; border none
for_window [class="plasmashell" window_type="notification"] border none, move right 700px, move down 450px
no_focus [class="plasmashell" window_type="notification"

# Set other stuff as floating
for_window [class="(?i)*nextcloud*"] floating disable

# Set the desktop background
exec --no-startup-id feh --bg-scale <PATH_TO_YOUR_WALLPAPER>

# Start the compositor daemonizing it (-b) and enabling shadows (-c)
exec_always --no-startup-id picom -cb

*The first line needs to be adapted if your Plasma language is not english. Use a tool like wmctrl to get the name of the window spawning when you login and replace the value in the i3 configuration file.

From this point on, you can logout and relog with the newly created session.

Optional final tuning

Remove i3bar

You may want to remove the lines related to the i3bar if you plan on keeping the Plasma status bar.

The Plasma "Pager" widget shows the i3 workspaces nicely, just be sure to have "Workspace name" instead of "Workspace number" in its configuration.

Disable "Activities" shortcut

Disable the Meta+Q shortcut from Plasma Settings > Category Workspace > Shortcuts > Category System Services > Plasma > Activities

Transparency and blurring

This can be configured per-window or per-application in the compositor settings. See picom.

The git version of picom has also dual_kawase as blur method.

More Repositories

1

ror2-server

Host your own Risk of Rain 2 dedicated server. No technical skills required. Runs everywhere.
Dockerfile
169
star
2

MonokaiC

A Monokai color scheme for Sublime Text, providing both colored and text-style preview for MarkdownEditing
65
star
3

reviews-sentiment

Data analytics, exploration, sentiment analysis and topic analysis (LDA) on Amazon customer reviews. And cool interactive plots.
Jupyter Notebook
29
star
4

iosevka-docker

Docker containers to build custom (or upstream) versions of the Iosevka typeface and package them for Debian
Shell
29
star
5

j2-resume

An opinionated (and probably over-engineered) workflow to produce a fancy LaTeX, web or docx Curriculum Vitae document from a JSON data source using Jinja2 (a data-driven CV)
TeX
22
star
6

Physarum

Physarum polycephalum slime mould computing simulation, implemented on a custom VueJS + Unity3D stack
C#
21
star
7

breeze2-sddm-theme

Default Plasma Breeze SDDM Theme with customizable font
QML
20
star
8

compsci

Lecture notes, projects, and more resources on the courses I attended for my Bachelor's and Master's degrees in Computer Science
Python
20
star
9

monokai-gtk

GTK2 theme, giving a uniform look to applications using the Monokai color scheme.
19
star
10

dailyProgrammer

A material design frontend to /r/dailyprogrammer challenges
JavaScript
18
star
11

kalman

Interactive and real time 2D simulation of the Kalman Filter in use to reduce statistical input noise.
Vue
18
star
12

RSSnotifier

Node RSS reader telegram bot. Provides notification on queries-matching elements and supports multiple users.
JavaScript
16
star
13

ardumonitor

Real time stats monitoring on Arduino.
Arduino
13
star
14

quadratino

a Snake clone for Game Boy
C
12
star
15

fuse

A simple file sharing web service in Vue.js and Flask
JavaScript
12
star
16

deb-builds

picom, alacritty, i3-gaps, sway, chromium and wlc debian packages. Available as a repository on deb.avivace.com
Makefile
11
star
17

Arc-T

Plasma desktop theme, based on Arc, providing full transparent panels.
Shell
7
star
18

debian-quickstart

Sane defaults for the twenty-first century.
CSS
7
star
19

sfx-framedata

Provides Capcom's Street Fighter V technical gameplay data on a Discord Bot and on a public API. Supports common (unofficial) move names and short forms.
Python
5
star
20

quantum-computing-intro

Afternotes on the "Practical introduction to Quantum Computing: from qubits to quantum machine learning and beyond" CERN course
5
star
21

misterino

Telegram Bot to subscribe and deliver notifications from Twitch Webhooks
Python
4
star
22

pokemon-fights

Predicting Pokèmon fights outcomes with decision trees
R
4
star
23

master-thesis

My master thesis in Computer Science: Modernising the CERN CMS Trigger Rates Monitoring software
TeX
4
star
24

radiogit

Watch GitHub repositories from Telegram chats. GitHub notifications delivered on Telegram.
Python
3
star
25

dna-recombination

Computer Science B.Sc thesis paper and final stage experience. Approaching a Computational Biology Problem with integer linear programming tools.
TeX
3
star
26

EmbeddedSystems-8051

Course project on a 8051 development board. Monitoring accelerometer and thermometer values on LCD.
C
3
star
27

openlab-report-template

LaTeX template for the project report of CERN Openlab summer students
TeX
2
star
28

mvpoli

Common Lisp and SWI-Prolog libraries to manipulate multivariate polynomials.
Prolog
2
star
29

cervical-cancer

Exploratory study on Cervical Cancer: verifying known causal relations and assessing risk factors from women medical history datasets.
TeX
2
star
30

sha

A Rasberry Pi integrated domotic solution with MQTT supporting sensors, actuators and thermostat. Controllable from a fancy VueJS web application, smart speakers or a basic SMS interface.
Python
2
star
31

pv2023

Paper submission for the PV2023 conference - "The Challenge of Digital Preservation at CERN"
TeX
1
star
32

VHDLtrafficlights

Implement a semaphore with a Xilinx FPGA
VHDL
1
star
33

msc1-sparsematrix

Comparing open source and commercial solvers for sparse matrices.
R
1
star
34

basket-shots

Predicting Basket Shots outcomes using Suppor Vector Machines. Data Technology and Machine Learning course project.
R
1
star
35

bio-p

Ruby
1
star
36

msc2-dct

Comparing naïve and scipy implementations of DCT2/IDCT2 (Direct Cosine Transform), while exposing the scipy implementation on a web app.
Python
1
star
37

french-attestation-generator

A bot to generate Attestation de déplacement dérogatoire documents on the go, just by sending a telegram message.
JavaScript
1
star
38

ultralite-music

A light music player for PSP capable of running smoothly on 19 MHz granting extreme battery life
Lua
1
star