alejandra and dwm xf86 keys

This commit is contained in:
2024-04-22 08:26:49 +02:00
parent 038bc3b7e5
commit 5d6abd228e
34 changed files with 360 additions and 302 deletions

View File

@@ -1,3 +1,2 @@
{ pkgs ? import <nixpkgs> {} }:
{pkgs ? import <nixpkgs> {}}:
pkgs.callPackage ./papyrus.nix {}

View File

@@ -1,6 +1,19 @@
{ stdenv, fetchurl, makeDesktopItem, makeWrapper, autoPatchelfHook, fontconfig, freetype, glib, gtk3, jdk17, lib, xorg, zlib, alsaLib }:
let
{
stdenv,
fetchurl,
makeDesktopItem,
makeWrapper,
autoPatchelfHook,
fontconfig,
freetype,
glib,
gtk3,
jdk17,
lib,
xorg,
zlib,
alsaLib,
}: let
# Please keep the version x.y.0.z and do not update to x.y.76.z because the
# source of the latter disappears much faster.
version = "6.6.0";
@@ -23,102 +36,102 @@ let
genericName = "SQL Integrated Development Environment";
categories = ["Development"];
};
in
stdenv.mkDerivation {
pname = "papyrus";
version = "6.6.0";
in stdenv.mkDerivation {
pname = "papyrus";
version = "6.6.0";
system = "x86_64-linux";
system = "x86_64-linux";
inherit src;
inherit src;
nativeBuildInputs = [
makeWrapper
autoPatchelfHook
];
nativeBuildInputs = [
makeWrapper
autoPatchelfHook
];
buildInputs = [
fontconfig
freetype
glib
gtk3
jdk17
xorg.libX11
xorg.libXrender
xorg.libXtst
zlib
alsaLib
];
buildInputs = [
fontconfig
freetype
glib
gtk3
jdk17
xorg.libX11
xorg.libXrender
xorg.libXtst
zlib
alsaLib
];
# Extract and copy executable in $out/bin
installPhase = ''
# Remove the bundled Java Runtime Environment as we will use our own.
rm -rf jre
# Extract and copy executable in $out/bin
installPhase = ''
# Remove the bundled Java Runtime Environment as we will use our own.
rm -rf jre
# Create the directory where DBeaver will reside within the Nix store.
mkdir -p $out/
# Create the directory where DBeaver will reside within the Nix store.
mkdir -p $out/
# Copy all the files from the build directory to the Nix store.
cp -r . $out/Papyrus
# Copy all the files from the build directory to the Nix store.
cp -r . $out/Papyrus
# The binaries will be automatically patched by autoPatchelfHook.
# This adds necessary runtime dependencies to the ELF files.
# The binaries will be automatically patched by autoPatchelfHook.
# This adds necessary runtime dependencies to the ELF files.
# Create a wrapper script for launching DBeaver.
# - Sets Java path
# - Sets library path for GTK and X11
# - Sets GSettings schema path
makeWrapper $out/Papyrus/papyrus $out/bin/Papyrus \
--prefix PATH : ${jdk17}/bin \
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [glib gtk3 xorg.libXtst]} \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
# Create a wrapper script for launching DBeaver.
# - Sets Java path
# - Sets library path for GTK and X11
# - Sets GSettings schema path
makeWrapper $out/Papyrus/papyrus $out/bin/Papyrus \
--prefix PATH : ${jdk17}/bin \
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [glib gtk3 xorg.libXtst]} \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
# Create a directory for the desktop entry.
mkdir -p $out/share/applications
# Create a directory for the desktop entry.
mkdir -p $out/share/applications
# Copy the generated desktop entry to the appropriate location.
cp ${desktopItem}/share/applications/* $out/share/applications
# Copy the generated desktop entry to the appropriate location.
cp ${desktopItem}/share/applications/* $out/share/applications
# Create a directory for storing the DBeaver icon.
mkdir -p $out/share/pixmaps
# Create a directory for storing the DBeaver icon.
mkdir -p $out/share/pixmaps
# Symlink the DBeaver icon to the standard location.
ln -s $out/Papyrus/icon.xpm $out/share/pixmaps/papyrus.xpm
'';
# Symlink the DBeaver icon to the standard location.
ln -s $out/Papyrus/icon.xpm $out/share/pixmaps/papyrus.xpm
'';
meta = with lib; {
homepage = "https://eclipse.dev/papyrus/index.php";
description = "Open source Model-Based Engineering tool";
# longDescription = ''
# Multi-platform database tool for developers, SQL programmers, database
# administrators and analysts. Supports all popular databases: MySQL,
# PostgreSQL, MariaDB, SQLite, Oracle, DB2, SQL Server, Sybase, MS Access,
# Teradata, Firebird, Derby, etc.
# '';
license = licenses.free;
platforms = ["x86_64-linux"];
maintainers = [maintainers.eRgo35];
};
}
# desktopItem = makeDesktopItem {
# name = "dbeaver-ee";
# exec = "dbeaver";
# icon = "dbeaver";
# desktopName = "dbeaver-ee";
# comment = "SQL Integrated Development Environment";
# genericName = "SQL Integrated Development Environment";
# categories = ["Development"];
# };
#
# # src = pkgs.fetchurl {
# # url = "https://download.eclipse.org/modeling/mdt/papyrus/rcp/2023-12/6.6.0/papyrus-2023-12-6.6.0-linux64.tar.gz";
# # sha512 = "ab1f1c0192fa7791550ef284c221a5445e02a699f4a82ec9b08f2c4b1f894b387751c37a6c5109f7709afea265126210682a266adb00fb26768057c0321ba802";
# # };
meta = with lib; {
homepage = "https://eclipse.dev/papyrus/index.php";
description = "Open source Model-Based Engineering tool";
# longDescription = ''
# Multi-platform database tool for developers, SQL programmers, database
# administrators and analysts. Supports all popular databases: MySQL,
# PostgreSQL, MariaDB, SQLite, Oracle, DB2, SQL Server, Sybase, MS Access,
# Teradata, Firebird, Derby, etc.
# '';
license = licenses.free;
platforms = ["x86_64-linux"];
maintainers = [maintainers.eRgo35];
};
}
# desktopItem = makeDesktopItem {
# name = "dbeaver-ee";
# exec = "dbeaver";
# icon = "dbeaver";
# desktopName = "dbeaver-ee";
# comment = "SQL Integrated Development Environment";
# genericName = "SQL Integrated Development Environment";
# categories = ["Development"];
# };
#
# # src = pkgs.fetchurl {
# # url = "https://download.eclipse.org/modeling/mdt/papyrus/rcp/2023-12/6.6.0/papyrus-2023-12-6.6.0-linux64.tar.gz";
# # sha512 = "ab1f1c0192fa7791550ef284c221a5445e02a699f4a82ec9b08f2c4b1f894b387751c37a6c5109f7709afea265126210682a266adb00fb26768057c0321ba802";
# # };
# # unpackPhase = "tar -xf $src -C $out/bin/papyrus --strip-components=1";
#
# installPhase = ''
# mkdir -p $out/bin
# tar -xf $src -C $out/bin --strip-components=1
# '';
#
# # unpackPhase = "tar -xf $src -C $out/bin/papyrus --strip-components=1";
#
# installPhase = ''
# mkdir -p $out/bin
# tar -xf $src -C $out/bin --strip-components=1
# '';
#