Study & Project ✏️/electron 🐣

[라즈베리파이 크로스컴파일] 4. electron desktop file 예제

JM 2022. 1. 5. 20:01
반응형

생각보다 복잡하고 힘들었다...

본 예제는 (라즈베리파이) Linux에서 진행하므로 버전, 기기 별로 차이가 있을 수 있다.

그러므로 내 라즈베리파이의 기기 버전을 알려주겠다.


Raspberry Pi 4 Model B Rev 1.4

Distributor ID: Debian
Description: Debian GNU/Linux 10 (buster)

64bit


Electron 공식문서를 보고 진행하기에 Electron-forge를 이용하겠다.

https://www.electronjs.org/docs/latest/tutorial/quick-start

 

Quick Start | Electron

This guide will step you through the process of creating a barebones Hello World app in Electron, similar to electron/electron-quick-start.

www.electronjs.org

quick-start 예제를 이용해 그대로 진행해 보겠다.

electron package를 진행하는 것 같다.

sudo npm install --save-dev @electron-forge/cli
sudo npx electron-forge import

이후에 공식 문서에서

npm run make를 하라고 하는데 오류가 나오게 된다.

바로 rpm-build를 할 수 없다고 하는데 이걸 설치해주면 된다.

sudo apt-get install rpm

그럼 이제 깔끔하게 바로 다음으로 넘어갈 수 있다.

sudo npm run make

꽤 긴 시간이 지나고 나면 해당 디렉토리에 이런 식으로 out폴더가 생성된다.

out폴더 -> electron-quick-start-*tartgetOS* -> electron-quick-start 라는 실행파일이 있다.

이 녀석을 바로 실행하면 열리지 않지만 해당 디렉토리의 터미널에서

./electron-quick-start

를 실행해주면 잘 동작한다.


이제 .desktop 파일을 생성해서 바로가기를 만들어주면 된다.

이때 .desktop파일은 "/usr/share/applications" 디렉토리 안에 만들어 줘야 한다.

sudo nano test.desktop

이렇게 만들어주고

안의 내용은 다음과 같다.

Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Test
Path=/home/pi/electron/electron-quick-start/out/electron-quick-start-linux-arm64
Exec=/home/pi/electron/electron-quick-start/out/electron-quick-start-linux-arm64/electron-quick-start
Terminal=true

테스트 모드일때는 웬만하면 Terminal=true로 해주자.

 

여기서 진짜 중요한!!!!!!!!

Name=Test에서 test의 첫 글자는 무조건 대문자여야 한다.

Name=Test 처럼!!!!

안 그러면 이름이 맞지 않는다고 나온다!!!!!!

Path는 설치 디렉토리, Exec는 실행할 파일이다.

Icon은 생략.

여기까지 마치면 멋지게 실행 메뉴에서 보이게 된다.


생각보다 관련 내용이 적었고, 구글링을 해보면 다들 electron-builder?를 많이 써서 애먹었다.

마지막으로는 참고했던 사이트들을 올리고 끝내야지

https://forums.raspberrypi.com/viewtopic.php?t=154447 

 

Making .desktop files exacutible - Raspberry Pi Forums

JimmyN wrote:You have some errors, but nothing that would prevent it from working, just an unneeded line and a menu category that doesn't exist. Those spaces at the end of the lines will be preventing it from working. They are not permitted, especially on

forums.raspberrypi.com

https://crasy.tistory.com/143

 

[Linux] .desktop 파일 만들기

윈도우에 바로가기가 있다면 리눅스에는 .desktop파일이 있습니다. 리눅스에서 프로그램이나 응용소프웨어등을 설치하고 나서 실행할려면 설치된 폴더로 가서 실행을 해야한다. 이것은 매우 블

crasy.tistory.com