Skip to content

Commit

Permalink
💩 Merge into Monorepo
Browse files Browse the repository at this point in the history
  • Loading branch information
cookiengineer committed Oct 7, 2020
1 parent 41a58fe commit 49d604c
Show file tree
Hide file tree
Showing 10,840 changed files with 849,951 additions and 14 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
110 changes: 110 additions & 0 deletions gnome-shell-extension-lycheejs/.eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
{
"env": {
"browser": true,
"es6": true,
"node": true
},
"extends": "eslint:recommended",
"parserOptions": {
"ecmaVersion": 2016,
"ecmaFeatures": {
"impliedStrict": true
}
},
"globals": {
"Me": true,
"imports": true,
"global": true,
"_": true
},
"rules": {
"array-bracket-spacing": [ "error", "always", {
"singleValue": true,
"objectsInArrays": false
}],
"brace-style": [ "error", "1tbs", {
"allowSingleLine": false
}],
"camelcase": "off",
"comma-dangle": [ "error", {
"arrays": "never",
"objects": "never",
"imports": "never",
"exports": "never",
"functions": "never"
}],
"comma-spacing": [ "error", {
"before": false,
"after": true
}],
"comma-style": [ "error", "last" ],
"complexity": "off",
"consistent-return": "off",
"consistent-this": "off",
"eol-last": [ "error", "always" ],
"eqeqeq": [ "error", "always" ],
"func-names": [ "error", "never" ],
"indent": [ "error", "tab", {
"SwitchCase": 1
}],
"keyword-spacing": [ "error", {
"before": true,
"after": true
}],
"linebreak-style": [ "error", "unix" ],
"lines-around-comment": [ "error", {
"beforeBlockComment": true,
"afterBlockComment": true,
"beforeLineComment": false,
"afterLineComment": false
}],
"multiline-ternary": [ "error", "never" ],
"newline-before-return": "off",
"newline-after-var": "off",
"newline-per-chained-call": "off",
"no-console": [ "error", {
"allow": [ "clear", "log", "info", "warn", "error", "deserialize", "serialize" ]
}],
"no-control-regex": "off",
"no-dupe-args": [ "error" ],
"no-dupe-keys": [ "error" ],
"no-empty": [ "error", {
"allowEmptyCatch": true
}],
"no-extra-semi": [ "error" ],
"no-floating-decimal": [ "error" ],
"no-global-assign": [ "error", {
"exceptions": [
"Audio",
"Image",
"console"
]
}],
"no-mixed-spaces-and-tabs": [ "error", "smart-tabs" ],
"no-negated-in-lhs": [ "error" ],
"no-octal": "off",
"no-return-assign": [ "error" ],
"no-return-await": [ "error" ],
"no-sequences": [ "error" ],
"no-shadow": "off",
"no-shadow-restricted-names": [ "error" ],
"no-trailing-spaces": [ "error" ],
"no-undef": [ "error", {
"typeof": false
}],
"no-undef-init": "off",
"no-undefined": "off",
"no-unreachable": [ "error" ],
"no-unused-vars": [ "error", {
"args": "none",
"varsIgnorePattern": "^[_A-Za-z]+"
}],
"object-curly-spacing": [ "error", "always" ],
"semi": [ "error", "always" ],
"semi-spacing": [ "error" ],
"space-before-blocks": [ "error", "always" ],
"space-in-parens": [ "error", "never" ],
"space-infix-ops": [ "error" ],
"space-unary-ops": [ "error" ]
}
}
6 changes: 6 additions & 0 deletions gnome-shell-extension-lycheejs/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

/gnome-shell-extension-lycheejs
/gnome-shell-extension-lycheejs-*.pkg.tar.xz
/pkg
/src

31 changes: 31 additions & 0 deletions gnome-shell-extension-lycheejs/PKGBUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Maintainer: Robot <robot@artificial.engineering>
pkgname=gnome-shell-extension-lycheejs
_pkgname=${pkgname%-git}

pkgver=r3.27e5b4d
pkgrel=1
pkgdesc="Manage lychee.js Projects and Libraries"
arch=('any')
url="/path/to/gnome-shell-extension-lycheejs"
license=('GPL3')
depends=('gnome-shell')
makedepends=('git')
source=("git+/path/to/gnome-shell-extension-lycheejs")
md5sums=('SKIP')

_folder="lycheejs@artificial.engineering"

pkgver() {
cd "$srcdir/$_pkgname"
printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
}

build() {
cd "$srcdir/$_pkgname"
}

package() {
cd "$srcdir/$_pkgname"
mkdir -p "$pkgdir/usr/share/gnome-shell/extensions/$_folder"
cp -r source/* "$pkgdir/usr/share/gnome-shell/extensions/$_folder"
}
83 changes: 83 additions & 0 deletions gnome-shell-extension-lycheejs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@

# GNOME Shell Extension for lychee.js Engine


This extension will add a popup menu to your GNOME Shell and integrates
your lychee.js Projects and Libraries with the native operating system.

The extension itself will only use the `lycheejs-*` CLI commands, so
folders, paths etc. are the identical behaviour as the binaries have
in a [lychee.js Engine](https://github.com/cookiengineer/lycheejs)
installation.


# Requirements

- GNOME Shell 3.26.2+
- [lychee.js Engine installation](https://github.com/cookiengineer/lycheejs)
- Management port `4848` (used by lychee.js Harvester)
- HTTP port `8080` (used by lychee.js Harvester)
- lychee.js Harvester's `development` profile (available by default)


Quick Features Overview:

- Start/Stop the lychee.js Harvester from the menu
- Open a terminal session in the lychee.js root

Each Project or Library can be managed:

- Start/Stop project servers from the menu
- Open file manager from the menu
- Open web browser from the menu
- Open a terminal session from the menu


![Screenshot](./screenshot.png)


# Installation

You can either copy/paste the contents of the `/source` folder into
the extension path - or use the `PKGBUILD` file on Arch Linux:

Arch Package Installation:

```bash
cd /path/to/gnome-shell-extension-lycheejs;
makepkg -s;
```

Manual installation:

```bash
mkdir -p $HOME/.local/share/gnome-shell/extensions/lycheejs@artificial.engineering;
cd $HOME/.local/share/gnome-shell/extensions/lycheejs@artificial.engineering;

cp -R /path/to/gnome-shell-extension-lycheejs/source/* lycheejs@artificial.engineering/;
```


# Development Help

Use the `[Alt]+[F2]` and `r` trick to restart the GNOME shell.

However, the `console.log()` API that is included with the extension will
work when using `journalctl /usr/bin/gnome-shell -f -o cat` to debug what's
going on. The terminal will stay attached and a GNOME shell restart will
output everything that's going on into the journalctl session.

Sadly, looking glass (the `lg` GNOME command) is a major design
fail when it comes to debugging extensions, because its window
will stay on top and keep the focus, so you cannot do anything
while inspecting the GTK tree.

In order to work with the extension's source code, you can also symlink
the `/source` folder into your local shell extensions like so:

```bash
cd $HOME/.local/share/gnome-shell/extensions;

ln -s /path/to/gnome-shell-extension-lycheejs/source lycheejs@artificial.engineering;
```

Binary file added gnome-shell-extension-lycheejs/screenshot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
36 changes: 36 additions & 0 deletions gnome-shell-extension-lycheejs/source/console.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@

const _console = {

log: function() {

let str = '';

for (let a = 0, al = arguments.length; a < al; a++) {

let data = arguments[a];
if (data instanceof Array) {
str += JSON.stringify(data, null, '\t');
} else if (data instanceof Object) {
str += JSON.stringify(data, null, '\t');
} else if (data !== undefined) {
str += (data).toString();
}

str += ' ';

}


global.log.call(global, str);

}
};



/*
* EXPORTS
*/

var console = _console;

Loading

0 comments on commit 49d604c

Please sign in to comment.