본문바로가기
자유게시판
수학을 주제로 떠들어 보세요!
[잡담] [삽질 로그] 오오오오랜만의 삽질로그 (⚠주의⚠)
Abiria♡ 2021.04.03 12:17 조회 775

※경고※

 

이 글은 '프로그래밍 과정에서 필수적으로 발생하는 (특히 환경 관련)문제를 해결하기 위해 온갖 시도를 하며 고생하는 행위' (일명 삽질) 에 대한 저의 기록입니다.

 

수학과 일체 관련이 없으며,

 

프로그래밍이라는 게....

'여기 이 코드에서 뭐가 틀렸을까요 까꿍' 이 수준이 아니라 (사실 대부분 코드문제는 아님) 그냥 문제 자체가 뭔지를 모르는 상황(ㅋㅋ) 이기 때문에, 일단 머리로 '이해' 가 불가능합니다.

 

결국 이렇게 적어놓고는 나중에 다시 확인하는 방법밖에 없죠 ㅋㅋ

 

제가 오랜만에 와서 저를 처음 보시는 분들이 많으리라 생각되니 (저의 그동안의 끔찍한 글들을) 보신 적이 없는 분들을 위해 당부드립니다.

 

이 글은 본인이 극도의 스트레스를 받은 환경에서 멘탈이 거듭해서 터져가며 쓴 글이기 때문에, 읽는 사람조차 분위기에 놀라 간접적인 스트레스를 받을 수 있는데,

대충 개항기-일제강점기 역사를 공부하다 보면 내가 살던 시대도 아닌데 보기만 해도 암이 걸리고 절로 통곡이 나오는 거랑 비슷한 원리입니다.

 

또한, 코딩 또는 컴퓨터를 쓰는 화면을 보기만 해도 속이 니글거리고 구토 현상이 발생하시는 분들, 임산부, 5살 미만의 소아, 노약자, 심신미약자, 코딩 암 말기 환자분들께는 이 글을 읽는 것을 굉장히 비추천 합니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

....아 그리고 이번거는 choco설치가 필요하니 http://www.polymath.co.kr/contents/view/25937 를 읽어놓으시면 좋습니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(바로 본론)

 

 

 

 

 

아.

 

 

 

 

 

본론으로 들어가기 전에,

 

 

 

 

 

 

 

 

 

...타자 연습중입니다.

 

 

 

 

 

 

 

 

 

 

그래서.....코등학생이나 돼가지곤 아직도 독수리 타자를 친다는 게 차암 뭣하지만 오타가 많을 겁니다.

 

 

 

 

(아참 여러분은 타자 몇 타 나오시는지 댓글로 써주세요 ㅎㅎ 저도 독수리 에디션으론 꽤 칩니다)

 

 

 

 

가급적 수정하고 있지만, 틀린부분 양해 부탁드립니다.

 

 

참고로, 제가 실제 이 상황에서 오타가 얼마나 많은지 궁금하시면

휠릭시스님께 물어보세요 ㅋㅋㅎㅎ

 

 

실제로 잠깐만 수정 안하고 쳐보자면

 

 

ㄷ기가나라아 안녕하세요 저는 Abitia입니다

츼미는 코딩하고 큭ㅇ킅ㅋ,임그리ㅣ디 입니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

음....

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1. 일단 목표는 개발환경을 빠르게 셋업하기 위해 npm과 choco를 사용하는 겁니다.

 

사실 리눅스 기반은 모두 패키지 매니저가 너무 좋기 때문에 필요없어서 ㅋㅋ

 

사실상 윈도우 타겟이라 할 수 있습니다.

 

윈도우의 거의 유일한 패키지 매니저인 쇼코를 고른 이유입니다.

 

(참고로 다른 분들 얘기 들어보니 choco를 쇼코가 아니라 초코라고 하시던데 ㅋㅋ 저는 이미 쇼코로 발음이 굳어져서 그냥 쇼코로 쓰겠습니다.)

 

https://chocolatey.org/

https://chocolatey.org/install

http://www.polymath.co.kr/contents/view/25937

 

보시면 아시겠지만 일단 '관리자 권한이 있는 파워쉘' 이 필요합니다.

 

근데 일단 쇼코를 설치하고 나니 cmd나 git bash에서도 쓸 수 있더군요 ㅋㅋ

 

그래서 쇼코 자체를 설치하는 기능은 일단 보ㄿ류하고 설치 응용만 해볼려고 했습니다.

 

언어로 JS를 고르고 child_process 모듈을 사용했습니다.

 

[dem.js]

 

const { spawn } = require('child_process');

 

const command = 'choco';

const args =

    //['--help'];

    ['install', 'notepadplusplus.install'];

 

const child = spawn(command, args);

 

child

    .on('exit', code => {

        console.log(`child process exited with code ${code}`);

 

        while (true) {}

    })

    .on('disconnect', code => {

        console.log(`child process disconneted with code ${code}`);

    })

    .on('close', code => {

        console.log(`child process closed with code ${code}`);

    });

child.stdout.on('data', data => {

    process.stdout.write(`stdout: ${data}`);

});

child.stderr.on('data', data => {

    console.log(`stderr: ${data}`);

});

 

/* child.stdin =  */

process.stdin.pipe(child.stdin);

 

일단 코딩글이 아니라 자세한 설명은 생략합니다. 사실 이 코드 만드는데도 삽질을 좀 했죠 ㅋㅋ

 

대충 보면 choco install notepadplusplus.install 를 실행합니다.

 

notepad++를 설치하는 명령어인데, 저는 예전에 패드++를 지워놓았으니 이게 성공하면 패드++가 설치될 겁니다.

 

그리고 추가적으로 process.stdin을 child.stdin으로 이어주는데,

 

간단히 말해서 부모 프로세스(즉, dem.js)로 오는 키 입력을 choco명령어를 실행하는 프로세스로 그대로 전달해 줘서 마치 직접 대고 하는 듯한(?) 느낌을 줍니다.

 

....여기가 시작입니다. (와!)

 

 

 

 

 

 

 

이걸 실행하려 하니

stdout: Chocolatey v0.10.15 stdout: Access to the path 'C:\ProgramData\chocolatey\lib\chromium ools\CR_60A73.tmp' is denied. child process exited with code 1

 

권한이 없다고 뜹니다.

 

그래서 다른 분이 추천해주신 대답이 runas /user:Administrator node.exe 입니다.

 

Administrator를 본인 계정으로 바꾸고 비밀번호를 입력하면 실행이 됩니다.

 

근데 전 비밀번호를 잊어서 ㅋㅋㅋㅋ

 

다음 방식으로 찾았습니다.

 

 

 

1. Win+I 로 Setting을 엽니다

 

 

2. accounts로 들어갑니다

3. Sing-in option (아마 여러분 컴퓨터에선 '로그인 옵셥' 으로 보일 겁니다)

 

 

4. 비밀번호 설정

5. 변경을 클릭

 

 

6. 요기 요런(?) 게 뜹니다.

이미 빔리번호 설정을 마치고 나면 요런 게 먼저 뜹니다.

 

 

7. 그리고 Win+R을 눌러 명령창을 엽니다.

그리고 control userpassworlds2를 입력해서 여세요

 

 

요런 친구가 뜹니다.

 

 

8. Users must enter a user name and password to use this computer 를 끄세요.

apply를 누르시면

 

요런 게 뜨면, 아까 설정한 비밀번호를 입력해 주세요.

그리고 OK를 눌러 마무리합니다.

9. Win+R 에 netplwiz를 입력해 엽니다.

 

요런 친구가 나옵니다! 아까랑 비슷해 보이죠?

 

 

10. 아까 해제했던 옵션을 다시 켭니다.

11. apply하고 ok합니다.

12. 그러면 갑자기 로그아웃 될 수 있습니다.

비밀번호 입력하고 로그인 합니다!

 

 

 

 

 

이거로도 해결되지 않는다면, ㅠㅠ 구글링을 해보세요 ㅠㅠㅠ

 

$ runas /user:PC node.exe Enter the password for PC:  Attempting to start node.exe as user "DESKTOP-RQJ6RK3\PC" ...

요렇게 뜬다면 성공입니다!

 

참고로 아까부터 나오던 PC는 계정 이름입니다.

여러분은 아까 설정하신 본인 계정 이름을 넣으시면 됩니다!

 

그나저나 ~node.exe ./dem.js 하면 구문 에러가 나서

~"node.exe ./dem.js" 를 해보았지만....

창이 무지 빠르게 지나가는 바람에 포기했습니다.

while(true) {} 같은 구문으로 무한루프를 만들어 봐도 아예 실행파일이 아니라 생긴 문제인 것 같기도 해서....

 

이 문제는 나중에 해결하기로 하고 아예 실행파일로 만드는 방법을 찾아다녔습니다.

 

리눅스의 경우 어떤 파일이든 적절한 샤방 코드(#!으로 시작하는 주석) 만 달아주면 모든 파일이 실행 가능하니

chmod +x ./dem.js

sudo ./dem.js 하면 되겠지만...

 

윈도우에서 써야 하니 윈도우의 실행파일인 exe로 변환하는 방법을 찾아다녔습니다.

 

처음엔 enclose를 쓰려 했지만....

 

 

 

 

 

 

 

 

 

 

 

 

 

 

영...

 

 

 

 

 

 

 

듣도 보도 못한 에러가 나서 그냥 버리고 다른 걸 찾았습니다.

 (ㅋㅋ)

 

 

 

 

pkg라는 녀석인데

$ npm i -g pkg

$ npm init -y

$ vi package.json ("bin": "./dem.js" 로 설정함)

이제

$ pkg . -o dem.exe

만 하면....!

 

$ pkg . -o dem.exe > pkg@4.5.1 > Targets not specified. Assuming:   node14-win-x64

(박수갈채)

 

 

ㅋㅋ....node-gyp를 윈도우에서(요즘은 리눅스로 해서...) 처음 써봤을 때 언듯 마주쳤던 녀석인데

너무 좋네요 ㅎㅎㅋㅋㅎㅎ

 

 

 

폴더를 열면 dem.exe가 있습니다.

(우클릭)

(관리자 권한으로 실행)

 

 

 

(허락)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(감동적인 순간입니다.....하....)

 

 

 

 

아까 파이핑을 해두었죠?

마치 부모 프로세스따윈 없다 이런 느낌으로 ㅋㅋㅋ y를 치시고 엔터!

 

 

 

 

exit zero (=이상 없음) 이 뜨면서 종료 됩니다!

(참고로 저 부분이 아 가 코드의 이 부분 입니다)

보시면 무한루프가 돌아가는 상태라 창이 아직 꺼지지 않습니다...!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

그럼, 노트패드가 설치되었나 볼까요?

 

 

 

 

 

Win 키를 눌러 시작화면으로 이동합니다

 

 

 

모든 앱 항목으로 들어갑니다

 

 

 

 

 

 

Recently added...!

 

 

 

 

 

 

여는 순간부터 노트패드++의 냄새가 납니다....

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

휴....

 

 

 

이것으로 모든 삽질로그가 끝났습니다!!! 와!@!1!@

 

 

 

아 참고로 문제가 있어 dem없이 테스트를 반복하셔야 할 경우

앱을 삭제하는 명령어는 choco uninstall <패키지명>입니다.

일반 파워쉘을 (꼭)관리자 권한으로 여셔야 합니다!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

헉헉.....그나저나 타자 힘드네요.....ㅋㅋㅋ

 

 

오타 있으면 꼭 댓글로 써주세요!

 

 

 

 

 

 

 

 

 

 

....그리고 코딩하지 마세요 ㅋㅋㅋ 새벽 3시에 이런거나 올리는 폐인 됩니다 ㅋㅋ 건강에 안좋아요ㅋㅋㅋㅋㅋㅋ

  •  
    Abiria♡ Lv.8 2021.04.03 12:23

    아! 참고로 DEM은 Development Environment Manager의 약자입니다 ㅎㅎ

    댓글 작성하기 좋아요0 댓글수0
  •  
    잡담 Lv.7 2021.04.03 15:09

    ㅎㄷㄷ

    댓글 작성하기 좋아요0 댓글수2
    •  
      Abiria♡ Lv.8 2021.04.03 22:50

      ㅋㅋㅋㅋ

      저를 처음 보시는군요 ㅋㅌㅋㅌㅋㅌㅋㅌㅌㅋ

      좋아요0
    •  
      잡담 Lv.7 2021.04.04 02:05

      처음 보는건 아니고요....

      제가 잡담이라는 걸 오고서 1주정도 뒤에 알았는데

      그래서 잡담을 한번 봤더니....

      글이 모두 사람님꺼 였어요ㅋㅋㅋㅋ

      좋아요0
  •  
    유한의끝도못본남자 Lv.7 2021.04.03 18:38

    600타

    댓글 작성하기 좋아요0 댓글수0
  •  
    원파 Lv.9 2021.04.03 19:10

    550타..(쭈글)

    댓글 작성하기 좋아요0 댓글수0
  •  
    리퍼 Lv.6 2021.04.03 20:49

    400타...

    댓글 작성하기 좋아요0 댓글수0
  •  
    Sagan Lv.6 2021.04.04 01:40

    엌 사람님 고등학생????

     

    오랜만에 폭

    폭*8 글 보니 좋네요~

    댓글 작성하기 좋아요0 댓글수1
    •  
      Abiria♡ Lv.8 2021.04.04 02:50

      ㅠㅜㅠㅠㅠㅜㅠㅠㅋㅋㅋㅋㅋㅋㅋ

       

      오늘올린 더 이상한 글도 있어요 그건 읽지 마세요 ㅋㅋㅋ

      좋아요0
  •  
    Scubed Lv.7 2021.04.04 06:19

    300타

    였지만 퇴화하여 200타

    댓글 작성하기 좋아요0 댓글수2
    •  
      Scubed Lv.7 2021.04.04 06:20

      다음글로 넘어가고 싶어서 스크롤을 하다가 토했습니다

      좋아요0
    •  
      Abiria♡ Lv.8 2021.04.04 16:04

      zzㅋㅋㅋㅋㅋㅋㅋ

      좋아요0
  •  
    자연상수 Lv.5 2021.04.04 18:22

    히익 읽다가 제컴인줄

    제컴에 있는 게 넘 많아서... 그리고 제컴 설정도(시작메뉴 전체화면, 다크테마, 언어 영어-근데 이건 코타나 쓰려고 한거여섴ㅋㅋ-)

    (윈도우 터미널 프리뷰, 디코, lmms, 비발디, 크롬 카나리아, 노트패드)

    @Abiria♡

    댓글 작성하기 좋아요0 댓글수4
    •  
      Abiria♡ Lv.8 2021.04.05 06:12

      오오오오 ㅋㅋㅋ 뭔가 아시는 분이시군요ㅋㅋ 여기서 윈10을 제대로 쓰시는 분을 만나게 되어 반갑습니다.

      좋아요0
    •  
      Abiria♡ Lv.8 2021.04.05 06:14

      윈도우터미널, 프리뷰인건 어떻게 아셨어요?

      좋아요0
    •  
      자연상수 Lv.5 2021.04.05 20:07

      파랑 네모가 밑에 붙어있어서;;

      윈도우 터미널은 그냥 구글링하다 찾았어요

      setting.json 변경해서 파워쉘, cmd, 파이썬, 데비안, 깃배시 다 모아놓고 투명도 하니까 완벽하더라고요

      @Abiria♡

      좋아요0
    •  
      Abiria♡ Lv.8 2021.04.05 23:03

      오오.....저도 아크릴로 해놓고 투명도 끝까지 낮추는데....ㅋㅋ 저랑 비슷한 취향이시군요

      좋아요0
  •  
    소(가 넘어가는)수 Lv.6 2021.04.07 22:42

    훗, 난 이미 자판 위치를 다 외웠지. 라고 자랑하기에는 타자 200후반대

    댓글 작성하기 좋아요0 댓글수0
  • 폴리매스 문제는 과학기술진흥기금 및 복권기금의 재원으로 운영되고, 과학기술정보통신부와 한국과학창의재단의 지원을 받아 수행된 성과물로 우리나라의 과학기술 발전과 사회적 가치 증진에 기여하고 있습니다.

  • ☎문의 02-6749-3911