| 1 | name: lazfuck
|
|---|
| 2 | title: LazFuck
|
|---|
| 3 | version: 1.4.0
|
|---|
| 4 | summary: A simple BrainFuck IDE written in Lazarus/FPC.
|
|---|
| 5 | description: |
|
|---|
| 6 | LazFuck is GUI application for writing, executing, compiling and debugging programs written in famous BrainFuck esoteric programming language.
|
|---|
| 7 |
|
|---|
| 8 | Features:
|
|---|
| 9 | * Graphical code editor with color syntax highlighting
|
|---|
| 10 | * Optimizing compiler and interpreter
|
|---|
| 11 | * Cross-compilation to Delphi, Free Pascal, Python, Java, C, C#, PHP, and Javascript
|
|---|
| 12 | * Interpreter with debugger
|
|---|
| 13 | confinement: strict
|
|---|
| 14 | base: core20
|
|---|
| 15 | grade: stable
|
|---|
| 16 | icon: "Images/64x64/LazFuck.png"
|
|---|
| 17 | license: NLPL
|
|---|
| 18 |
|
|---|
| 19 | parts:
|
|---|
| 20 | lazfuck:
|
|---|
| 21 | plugin: nil
|
|---|
| 22 | source: .
|
|---|
| 23 | source-type: local
|
|---|
| 24 | build-packages:
|
|---|
| 25 | - fpc
|
|---|
| 26 | - lazarus
|
|---|
| 27 | - lcl
|
|---|
| 28 | - lcl-utils
|
|---|
| 29 | override-build: |
|
|---|
| 30 | snapcraftctl build
|
|---|
| 31 | lazbuild --build-mode=Release LazFuck.lpi
|
|---|
| 32 | install -d -m 755 $SNAPCRAFT_PART_INSTALL/usr/bin
|
|---|
| 33 | install -s -m 755 LazFuck $SNAPCRAFT_PART_INSTALL/usr/bin/LazFuck
|
|---|
| 34 | install -d -m 755 $SNAPCRAFT_PART_INSTALL/usr/share/LazFuck/Languages
|
|---|
| 35 | install -m 644 Languages/*.po $SNAPCRAFT_PART_INSTALL/usr/share/LazFuck/Languages
|
|---|
| 36 | install -m 644 Packages/Common/Languages/*.po $SNAPCRAFT_PART_INSTALL/usr/share/LazFuck/Languages
|
|---|
| 37 | install -d -m 755 $SNAPCRAFT_PART_INSTALL/usr/share/applications
|
|---|
| 38 | install -m 755 Install/snap/local/LazFuck.desktop $SNAPCRAFT_PART_INSTALL/usr/share/applications
|
|---|
| 39 | install -d -m 755 $SNAPCRAFT_PART_INSTALL/usr/share/pixmaps
|
|---|
| 40 | install -m 644 Images/64x64/LazFuck.png $SNAPCRAFT_PART_INSTALL/usr/share/pixmaps
|
|---|
| 41 | install -d -m 755 $SNAPCRAFT_PART_INSTALL/usr/share/mime/packages
|
|---|
| 42 | install -m 644 Install/snap/local/LazFuck.xml $SNAPCRAFT_PART_INSTALL/usr/share/mime/packages
|
|---|
| 43 | cp -r Examples $SNAPCRAFT_PART_INSTALL/usr/share/LazFuck
|
|---|
| 44 | after:
|
|---|
| 45 | - desktop-gtk2
|
|---|
| 46 | - lazarus
|
|---|
| 47 | stage:
|
|---|
| 48 | - etc
|
|---|
| 49 | - usr
|
|---|
| 50 | - usr/bin
|
|---|
| 51 | - usr/share/LazFuck
|
|---|
| 52 | - usr/share/applications/LazFuck.desktop
|
|---|
| 53 | - usr/share/pixmaps
|
|---|
| 54 | - usr/share/mime
|
|---|
| 55 | stage-packages:
|
|---|
| 56 | - libatk1.0-0
|
|---|
| 57 | - libcairo2
|
|---|
| 58 | - libdatrie1
|
|---|
| 59 | - libfontconfig1
|
|---|
| 60 | - libfreetype6
|
|---|
| 61 | - libfribidi0
|
|---|
| 62 | - libgdk-pixbuf2.0-0
|
|---|
| 63 | - libgraphite2-3
|
|---|
| 64 | - libgtk2.0-0
|
|---|
| 65 | - libharfbuzz0b
|
|---|
| 66 | - libpango-1.0-0
|
|---|
| 67 | - libpangocairo-1.0-0
|
|---|
| 68 | - libpangoft2-1.0-0
|
|---|
| 69 | - libpixman-1-0
|
|---|
| 70 | - libpng16-16
|
|---|
| 71 | - libthai0
|
|---|
| 72 | - libx11-6
|
|---|
| 73 | - libxau6
|
|---|
| 74 | - libxcb-render0
|
|---|
| 75 | - libxcb-shm0
|
|---|
| 76 | - libxcb1
|
|---|
| 77 | - libxcomposite1
|
|---|
| 78 | - libxcursor1
|
|---|
| 79 | - libxdamage1
|
|---|
| 80 | - libxdmcp6
|
|---|
| 81 | - libxext6
|
|---|
| 82 | - libxfixes3
|
|---|
| 83 | - libxi6
|
|---|
| 84 | - libxinerama1
|
|---|
| 85 | - libxrandr2
|
|---|
| 86 | - libxrender1
|
|---|
| 87 | lazarus:
|
|---|
| 88 | plugin: nil
|
|---|
| 89 | source: .
|
|---|
| 90 | source-type: local
|
|---|
| 91 | build-packages:
|
|---|
| 92 | - wget
|
|---|
| 93 | - libgtk2.0-dev
|
|---|
| 94 | override-build: |
|
|---|
| 95 | wget -nc https://downloads.sourceforge.net/project/lazarus/Lazarus%20Linux%20amd64%20DEB/Lazarus%203.4/lazarus-project_3.4.0-0_amd64.deb
|
|---|
| 96 | wget -nc https://downloads.sourceforge.net/project/lazarus/Lazarus%20Linux%20amd64%20DEB/Lazarus%203.4/fpc-laz_3.2.2-210709_amd64.deb
|
|---|
| 97 | wget -nc https://downloads.sourceforge.net/project/lazarus/Lazarus%20Linux%20amd64%20DEB/Lazarus%203.4/fpc-src_3.2.2-210709_amd64.deb
|
|---|
| 98 | apt install ./lazarus-project_3.4.0-0_amd64.deb ./fpc-laz_3.2.2-210709_amd64.deb ./fpc-src_3.2.2-210709_amd64.deb
|
|---|
| 99 | stage: [-*]
|
|---|
| 100 | prime: [-*]
|
|---|
| 101 |
|
|---|
| 102 | desktop-gtk2:
|
|---|
| 103 | source: https://github.com/ubuntu/snapcraft-desktop-helpers.git
|
|---|
| 104 | source-subdir: gtk
|
|---|
| 105 | plugin: make
|
|---|
| 106 | make-parameters: ["FLAVOR=gtk2"]
|
|---|
| 107 | build-packages:
|
|---|
| 108 | - build-essential
|
|---|
| 109 | - libgtk2.0-dev
|
|---|
| 110 | stage-packages:
|
|---|
| 111 | - libxkbcommon0 # XKB_CONFIG_ROOT
|
|---|
| 112 | - ttf-ubuntu-font-family
|
|---|
| 113 | - dmz-cursor-theme
|
|---|
| 114 | - light-themes
|
|---|
| 115 | - adwaita-icon-theme
|
|---|
| 116 | - gnome-themes-standard
|
|---|
| 117 | - shared-mime-info
|
|---|
| 118 | - libgtk2.0-0
|
|---|
| 119 | - libgdk-pixbuf2.0-0
|
|---|
| 120 | - libglib2.0-bin
|
|---|
| 121 | - libgtk2.0-bin
|
|---|
| 122 | - unity-gtk2-module
|
|---|
| 123 | - locales-all
|
|---|
| 124 | - libappindicator1
|
|---|
| 125 | - xdg-user-dirs
|
|---|
| 126 | - ibus-gtk
|
|---|
| 127 | - libibus-1.0-5
|
|---|
| 128 |
|
|---|
| 129 | # Additional plugs to pick up the GTK theme and icons from the system
|
|---|
| 130 | plugs:
|
|---|
| 131 | icon-themes:
|
|---|
| 132 | interface: content
|
|---|
| 133 | target: $SNAP/data-dir/icons
|
|---|
| 134 | default-provider: gtk-common-themes
|
|---|
| 135 | sound-themes:
|
|---|
| 136 | interface: content
|
|---|
| 137 | target: $SNAP/data-dir/sounds
|
|---|
| 138 | default-provider: gtk-common-themes
|
|---|
| 139 | gtk-2-engines:
|
|---|
| 140 | interface: content
|
|---|
| 141 | target: $SNAP/lib/gtk-2.0
|
|---|
| 142 | default-provider: gtk2-common-themes:gtk-2-engines
|
|---|
| 143 | gtk-2-themes:
|
|---|
| 144 | interface: content
|
|---|
| 145 | target: $SNAP/usr/share/themes
|
|---|
| 146 | default-provider: gtk2-common-themes:gtk-2-themes
|
|---|
| 147 |
|
|---|
| 148 | environment:
|
|---|
| 149 | XDG_DATA_DIRS: $SNAP/usr/share:$XDG_DATA_DIRS
|
|---|
| 150 | GTK_PATH: $SNAP/lib/gtk-2.0
|
|---|
| 151 |
|
|---|
| 152 | apps:
|
|---|
| 153 | lazfuck:
|
|---|
| 154 | command: usr/bin/LazFuck
|
|---|
| 155 | command-chain:
|
|---|
| 156 | - bin/desktop-launch
|
|---|
| 157 | desktop: usr/share/applications/LazFuck.desktop
|
|---|
| 158 | plugs:
|
|---|
| 159 | - desktop
|
|---|
| 160 | - x11
|
|---|
| 161 | - home
|
|---|
| 162 |
|
|---|
| 163 | layout:
|
|---|
| 164 | /usr/share/LazFuck:
|
|---|
| 165 | bind: $SNAP/usr/share/LazFuck
|
|---|