워낙 엉망에,, 복잡하기도 하고... 지금의 나랑 밀접한 연관(?)이 있는 부분이라 정리해봤다..ㅋㅋ

참고로 작성 날짜는 2014년 1월 28일.

법이란게 워낙 자주 바뀌어서 말이지..ㅋㅋ


----------

선거법 개정으로 선거 연령이 내려갔지만, 직접적인 수정은 하지 않음. - 2019.12.30

----------


열심히 썼지만, 안읽는거 다 안다! ㅋㅋ

=======================================

간략 정리!!

일반적으로 수능친 학생

- 1월 1일이 지나면 술, 담배, 찜질방 가능

- 고등학교 졸업 후 노래방, PC방 등 청소년 유해업소 10시 이후 출입 가능

- 생일 이후 완전한 성인(계약, 선거 등 가능)

빠른년생

- 1월 1일이 지나도 할 수 있는거 없음ㅋ

- 생일 지나고 고등학교 졸업 후 노래방, PC방 등 청소년 유해업소 10시 이후 출입 가능

- 다음해 1월 1일이 지나야 술, 담배, 찜질방 가능

=======================================


밑에는 읽고 싶은 사람만 읽거라~~

형법이나 근로 조건 등에 관한 사항도 많지만, 딱히 필요 없을테니 생략한다..ㅋㅋ


아, 잘못된 내용 태클 받습니다!!! ㅋㅋ


만나이, 세는나이

우리나라가 전세계에서 거의 유일하게 세는나이(태어나자마자 1살)를 사용한다고 해도,

언론과 법조문 등 모든 공식적인 문서에서는 만나이를 사용한다.

마찬가지로 법과 관련해서 '만' 이 생략되어 있어도, 만나이라고 생각하면 됨.


이 만나이란건 한 해가 기준이 아니라 내가 태어난 날이 기준이다.

3월~12월 생으로 빠른/조졸없이 학교에 입학하고 수능을 치고, 해가 지나 1월을 맞았다면 보통 한국식 세는 나이로 20살.

하지만 만나이로 따지면 18년 +n개월을 살아온 것이기 때문에 만 18세가 된다.


나이 제한 3단계

이 나이 즈음해서 각종 법적 나이제한에 걸리는 것은 3단계가 있다.

1. 청소년 보호법의 1월 1일부터 제외

2. 각종 법령에서 청소년을 직접 정의하면서 생긴 고등학교 재학 중 제한

3. 그냥 성인(민법상 성인)


충분히 복잡하긴 하지만, 만20세던 민법상 성인이 만19세로 개정되면서 그나마 조금 쉬워졌다..ㅋㅋ


1. 청소년 보호법

청소년 보호법 제2조제1항

공중위생관리법

유해(?)한 것으로부터 청소년"을 보호" 하는 법령이다. 대표적으로 제한되는 것이 술, 담배.

수능이라는 우리나라 사회적 특성상, 예외적으로 특이하게 만19세가 되는 해의 1월 1일부터 이 법에서 정의하는 청소년에서 제외된다. 물론 다른 법에서 이 법을 다시 참조하지 않는한, 다른 법령과는 상관없다.


술, 담배는 워낙 유명해서 다들 잘 알겠지만,, 또 술 담배 외엔 딱히 청소년 보호법이 풀리면서 가능해지는게 잘 없다..

각 법령에서 다시 청소년을 정의해버려서;;;

찜질방 정도가 여기에 해당된다.


빠른 년생 중에 대학교 1학년 생일이 지나면 술,담배를 할 수 있는 것으로 착각하는 친구들이 있는데,

생일이 지난다고 해서 부모 동의하에 결혼이 가능해질 뿐, 달라질 건 없다. 1년 더 기다리거라...ㅋㅋㅋ


2. 고등학교 재학 제한

영화 및 비디어물의 진흥에 관한 법률 제2조제18항 (극장)

음악산업진흥에 관한 법률 제2조제14항 (노래방)

게임산업진흥에 관한 법률 제2조제10항 (PC방, 오락실)


아무생각없이 극장을 넣었는데, 극장은 청소년 유해업소가 아니다...ㅋㅋㅋㅋ

노래방, PC방, 오락실 등 흔히 '청소년 유해 업소, 10시 이후 출입 제한' 으로 알고 있는 것들이 여기에 해당된다.

각 업종을 정의하는 법령에서 청소년을 정의할 때 청소년 보호법을 끌어 쓰지 않고,

"청소년"이라 함은 18세 미만의 자( 초.중등교육법 제2조의 규정에 따른 고등학교에 재학 중인 학생을 포함한다)

이런식으로 직접 정의해 버린다.

고로 일반적인 고3의 나이지만 고등학교에 다니지 않는 학생이 생일이 지나면 출입이 가능하고,

  수능친 후 1/1 이 지났더라도 2월달 졸업하기 전인 학생은 10시 제한에 걸린다.

빠른 년생의 경우엔 졸업한 후에 노래방, PC방은 10시 이후 출입이 가능하다는 장점이 있다ㅋㅋ

만18세 제한이 있지만, 빠른년생이라면 졸업하고 나면 생일은 다 지나있겠지?


이렇게 복잡하게 따지지 않고 1월 1일이 지나면 그냥 봐주는 곳도 많다지만, 법은 그렇다.

참고로 당구장은 청소년 유해업소가 아니다. 고등학교 재학 중에도 10시 이후에 상주 가능! ㅋㅋ


3. 민법상 성인

민법 제4조

우리나라 민법상 성인 나이는 만19세. 고로 수능친 직후라면 아직 민법상 성인은 아니다.

(결혼해서 성년 의제되지 않았다면) 민법상 성인이 되지 않으면 휴대폰 구매 등 각종 계약은 직접 할 수 없다.

(깊게 들어가면 복잡하니 여기까지)

생일이 지나 만19세가 되면 그냥 성인이다. 투표도 할 수 있고, 결혼도 자유고... 더이상 딴지 걸릴 것이 없음..




사실 이런걸 알아도 막상 써먹으려면 머리아프다..ㅋㅋ

업주가 거부해버리면 답 없기도 하고....

젤 좋은건 그냥 생일이 빨리 지나버리는거....


하지만 늙기 싫어..ㅠㅠㅠㅠㅠ




⑴ 공중위생관리법 시행규칙 제7조

→ 별표 4 공중위생엽업자가 준수하여야 하는 위생관리기준 등(제7조관련)

2-라-(10) ..생략.. 청소년(청소년보호법에서 정한 청소년을 말한다. 이하 같다) ..생략..

'기타' 카테고리의 다른 글

dd-wrt dns 설정  (1) 2015.01.15
Facebook 전체공개 게시물 댓글달기 권한  (1) 2015.01.08
티스토리 RSS 설정  (6) 2013.12.05
오픈소스 라이센스  (0) 2012.01.22
마인크래프트 논리 게이트  (1) 2011.01.20




바다소리(맞춤법상으론 "바닷소리"가 맞습니다)는 Mac 용 소리바다 플레이어입니다.


기존의 웹플레이어를 이용해 만들었으며, (당연히) 비공식 어플리케이션입니다.

(고로 별 문제 없으리라 믿지만, 갑자기 작동이 안되거나 사라질 수도...)


http://badasori.iolate.kr/

이 링크를 보고 오시면 어떻게 생겼는지 이해가 가실거에요.


다운로드는 여기

(혹은 위 페이지)


이 플레이어를 만든 이유는

1. 웹플레이어 형태가 웹 서핑시 불편하다

- 새 창을 띄우기 위해 손을 한번 더 쓰거나 실수로 꺼버리는 상황이 발생


2. 키보드 단축키 사용을 위해서


3. 웹으로 인한 자잘한 불편함


4. 맥용 Bugs 플레이어를 고등학생이 만들었다고 기사까지 난거보고

-그리고 수능 친 잉여지만 나도 아직 고등학생.......



아직 불편한 점도 많고 개선할 부분도 많지만 조금씩 개선해나갈 생각입니다.




재생목록과 관련된 부분은 미니플레이어에 있는 소리바다 로고를 누르면 나타나는 소리바다 웹에서 해결해 주셔야합니다..


또한 상태바의 소리바다 아이콘을 우클릭하면 로그인과 설정을 할 수 있는 메뉴가 나타납니다.



감사합니다~!!



ps. 근데,, 소리바다를, 그것도 맥에서 쓰는 사람은 많지 않을 것 같은데 말이죠.....

ps2. 형이 Genie 버전을 내놓아라고 강요하고 있어서 곧 Genie 용 플레이어도 만들어질 수도...


Version 1.0 (2013.12.15) :

최초 버전

미니 플레이어 - 현재 재생 정보, 컨트롤(재생, 다음곡, 이전곡, 시간 탐색, 볼륨, 반복, 셔플)

알림센터 지원

맥용 키보드의 미디어 키(재생, 다음곡, 이전곡) 지원


Version 1.1 (2013.12.17) :

플레이어 새로고침 버튼 추가

로딩 중에도 소리바다 웹을 열 수 있도록 수정

메뉴 - 로그인 시 로그인 탭이 열리지 않던 문제 수정

플레이어가 나타날 때 작업중이던 창이 포커스를 잃는 문제 수정

네비게이트 에러시 url 출력

맥에 있는 기본 앱들을 열어보면, 있어야 할 리소스 대신


이런 파일만 있다..

iOS 에 .artwork 처럼 리소스들을 압축(?)해 놓은 파일이다.


검색을 해본 결과 Resedit, ThemePark 등의 앱이 나왔지만,, 현재 OSX 에는 없거나 호환이 되지 않는다.


http://iconverticons.com/online/


에서 웹으로 파일을 올린 후 내려받는 식으로 할 수도 있지만,

무료인 웹서비스는 제대로 되지도 않고 용량제한도 있다..

iConvert 앱으로도 제공하나, 얘는 유료.



그래서 결론은,,

http://stackoverflow.com/questions/5069705/how-to-get-images-from-itunes-rsrc-using-derez


이 글.

뭔가 제대로된 해결책이 아닌 것 같아서 검색 초창기에 봤음에도 지나갔는데, 저게 정답이였다.

(확장자만 제대로 썼어도...ㅡ_ㅡ)


우선 DeRez 는 xcode 개발툴에 있다. 만약 없으면,, xcode 를 설치하고.. 그래도 없으면 command line tool 도 설치.


$ DeRez -useDF -only 'PNG' iTunes.rsrc > iTunes.txt


(PNG 대문자 구분한다... 이거땜에 또 좀 고생..ㅠㅠ)

이렇게 하면 바이너리 값이 잘 정리된(?) 파일이 튀어나온다.




대충 이런형태....

딱봐도 저부분만 빼내면 png 파일이 나오는건데,,, 


이걸 저 stackoverflow 의 답변자가 파이썬으로 만들어 놨다.


for l in file('iTunes.txt'):

    if not l[0] == '\t':

        if l.startswith('data '):

            res_id = l[l.rindex('(') + 1:l.rindex(')')]

            out = file('extract/' + res_id + '.png', 'wb')

        continue

    out.write(l[l.index('"') + 1:l.index('" ')].replace(' ', '').decode('hex'))


안에 인자들을 자신에 맞게 적당히 바꿔준다음

python 을 돌려주면 이미지가 다 튀어나온다.



간단하다.


Target -> Info (즉 Info.plist 수정) 에서

Application is agent (UIElement) 값을 YES 로 해주면 된다.

Raw key 값은 LSUIElement



근데 이렇게 하면 내가 원하는대로 수정이 안되거나,

수정을 하더라도 앱을 재실행 해줘야 한다.


그래서,, 아래와 같은 방법이 있다!!


위에서 설정하는 UIElement 값을 동적으로 바꿔주는 것 같다.


ProcessSerialNumber psn = { 0, kCurrentProcess };

TransformProcessType(&psn, kProcessTransformToForegroundApplication);


이건 독에 아이콘을 나타내는 코드



ProcessSerialNumber psn = { 0, kCurrentProcess };

TransformProcessType(&psn, kProcessTransformToUIElementApplication);


이건 다시 UIElement = TRUE, 즉 독에서 앱을 없애게 해준다.


type 인자만 다르지만,, 두줄밖에 안되니 그냥 두번 적어줬다.



여기에 앱을 등록하고, 확인하고, 제거하는 코드.

자신의 bundlePath 기준으로 등록, 검사, 제거한다.


코드를 그냥 붙여넣기 하려 했으나, 들여쓰기가 없어진다..ㅠ


그래서 걍 gist 로 올림.


https://gist.github.com/iolate/7963775


원래 추가/삭제만 있었는데 등록되어 있는지 검사하는 코드도 넣었다.(삭제에서 조금만 수정..ㅎㅎ)

그리고.. 메모리 관리 조금.. 근데 맞는지 모르겠다ㅋㅋㅋ


출처: http://cocoatutorial.grapewave.com/tag/mac-os-x/

ARC 사용하는 프로젝트에서 특정 파일만 MRC 를 사용하기 위해서는

컴파일 옵션에 -fno-objc-arc 를 넣어주면 된다.


근데 xcode5 로 올리고 나니

Targets -> Build Phases 로 이동하면...



없다!!! 

컴파일러 옵션이 없고, 더블 클릭해도 안된다.


그래서 검색해보니,, 답은 황당하다..



오른쪽 탭을 없애든지 뭐 기타 방법으로 창을 길게 만들어주면 된다.

그럼 숨어있던 컴파일러 옵션이 나타난다.. ㅡ_ㅡ...


저기에 -fno-objc-arc 를 넣어주면 됨.

'개발개발 > 기타' 카테고리의 다른 글

[Mac / Ubuntu] Go (golang) 설치하기  (0) 2015.12.22
winapi gdi+ image load and convert to HBITMAP  (0) 2015.11.02
Surrounded 스킨 깨짐 해결  (0) 2015.06.07
python to exe  (2) 2015.02.25
XCode4 업데이트  (1) 2011.03.11

%hook NSString

-(NSString *)stringWithString:(NSString *)str {

//....

%orig;

}

%end


THEOS 언어를 사용해봤다면, 메서드를 위와 같이 후킹해서 사용하게 된다.

근데 저건 탈옥해서 트윅을 사용할 때의 얘기이고,,,


맥용 앱을 제작할 때 메서드 후킹이 필요할 때가 있을 수 있다.

(iOS 에서는 확인 안해봤지만,, 안되겠지?)


일반적인 경우라면 새로운 클래스를 만들고 원래 클래스를 상속받아서 사용하면 되겠지만..




주저리주저리 하고 싶은 말이 많지만 생략하고, 오버라이딩(후킹)을 위해선 아래 함수를 사용하면 된다.

더보기 클릭!




사용방법은


1. 해당 클래스에 카테고리로 대체용 함수를 만든다.

2. MethodSwizzle 함수를 사용해 필요한 때에 바꿔준다.

3. 원래 메서드를 호출하고 싶다면, 카테고리로 만든 메서드를 호출해 주면 된다.


예시:


@interface NSString (Swizzle)

-(NSString *)alt_stringWithString:(NSString *)str;

@end


@implementation NSString (Swizzle)


-(NSString *)alt_stringWithString:(NSString *)str {

    //......

    

    return [self alt_stringWithString:str];

}


@end


...


-(void)somewhereInYourMind {

MethodSwizzle([NSString class], @selector(stringWithString:), @selector(alt_stringWithString:));


[NSString stringWithString:@""];

}


이렇게 하면 원래 메서드(여기선 stringWithString:) 를 호출하면

alt_stringWithString: 을 거친 다음 원래 메서드가 호출되고, 반환된다.



출처: http://cocoadev.com/MethodSwizzling

방명록을 통해 RSS 업데이트가 안되니 글을 '발행'으로 해달라는 요청을 받았다.


확인해보니 Daum View 로 발행했던 2개의 글 외엔 안뜨는걸 확인.


그래서 전체 글 중 비공개글을 하나하나 걸러내며 다 발행으로 바꿨는데,,

그래도 업데이트가 안된다...!!


처음엔 딜레이가 있나,, 했는데 몇시간이 지나도 안되서 좀 더 검색을 해봤다.


명확히 설명된 글은 없엇지만, 티스토리 관리 - 글 설정 메뉴에서 설정을 해주면 된다.

(꼭 발행으로 해야되는건 아니더라...)




내 설정은 위와 같다ㅎㅎ



글쓰기 환경 - 공개는 기본값 설정이다.

여기 설정해둔게 '글쓰기'를 할 때 기본값이 된다.


그리고 공개정책 - RSS. 여기가 문제였다.


나의 경우 발행글로 선택이 되어있어서 발행한 글 외에는 RSS 로 올라가지 않은 것으로 보인다.

글 목록에서 공개 글들을 다 발행으로 바꾸었지만, Daum View 로 제대로 발행된게 아니라 그런지 여전히 RSS 에 나타나진 않았다..


그래서 그냥 공개글로 설정을 바꾸었더니 모든 글들(정확힌 설정한대로 최근 10개의 글)이 RSS 로 올라갔다.


그리고 RSS feed 주소로 직접 들어가면 갱신이 되어있지만 한RSS 에서는 제대로 안되길래

한RSS에서 글 목록 젤 아래 즉시수집 요청하기를 했더니 곧 갱신되더라...



'기타' 카테고리의 다른 글

dd-wrt dns 설정  (1) 2015.01.15
Facebook 전체공개 게시물 댓글달기 권한  (1) 2015.01.08
청소년 나이 제한 정리  (0) 2014.01.28
오픈소스 라이센스  (0) 2012.01.22
마인크래프트 논리 게이트  (1) 2011.01.20

설치

간단하다.


$ ruby <(curl -fsSkL raw.github.com/mxcl/homebrew/go)


검색하면 나오긴 하지만

클론 / 빌드 가 먼저 나와서 걍 적어둠..


아 그리고 설치가 끝나면

You should run `brew doctor' *before* you install anything.


이렇게 말하니 잊지말고

$ brew doctor

도 해주자.



다운그레이드

iOS 의 dpkg 가 구버젼이라 다운그레이드가 필요했다.

(결론적으로 이걸로 해결되진 않았지만 여튼...ㅋㅋ)


내 과정을 대충 넣어놨으니 알아서....


$ brew unlink dpkg

Unlinking /usr/local/Cellar/dpkg/1.17.1... 103 links removed


$ cd `brew --prefix`

$ brew versions dpkg

1.17.1   git checkout 9650e37 /usr/local/Library/Formula/dpkg.rb

1.15.8.13 git checkout 5ddd40b /usr/local/Library/Formula/dpkg.rb

1.15.8.12 git checkout f585036 /usr/local/Library/Formula/dpkg.rb

1.15.8.11 git checkout 2dd97d1 /usr/local/Library/Formula/dpkg.rb


git checkout 5ddd40b /usr/local/Library/Formula/dpkg.rb

$ brew install

Error: This formula cannot be built with any available compilers.

To install this formula, you may need to:

  brew install apple-gcc42

brew install apple-gcc42

$ brew install dpkg


참고로 이 과정 후에는

$ brew switch formula version

로 왔다갔다가 가능하다.

수능치고 친구랑 바람의나라(..)정도 할려고 윈도우를 설치하였다.

무료 가상머신인 VirtualBox 가 꽤나 쓸만하대서 얘로 진행.

부트캠프는 쓸 생각이 없었어나 가상머신에선 실행이 안되는 핵쉴드 때문에

결국 붓캠으로 재설치하였다ㅠㅠㅠㅠ


패러렐즈와 달리 VirtualBox 는 부트캠프 파티션을 가져오는 기능을 기본으로 지원하지 않는다.

하지만 검색해보면 방법은 있고, 클리앙 팁게에 용자군 님이

[맥] 버추얼박스(Virtualbox)에서 부트캠프 파티션 쓰기(Windows7)


라는 글을 써주셨다.


저 글을 보고 하긴 했는데,, 2011년 글이라 그런지 저대로하면 안된다..ㅋㅋ

언제부턴진 모르겠지만 disk0s3 은 복구파티션이 사용하기 때문..


그래서 새로 정리해 봤다.

(당연한 소리지만 $ 는 쉘 종류를 나타내는 기호로 저것까지 복&붙하면 안된다..)


1. BOOTCAMP 파티션 추출

파인더에서 우클릭 -> 추출을 선택하거나

$ sudo umount /Volumes/BOOTCAMP/


2. BOOTCAMP 파티션 ID 확인

$ diskutil list

/dev/disk0

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      GUID_partition_scheme                        *121.3 GB   disk0

   1:                        EFI EFI                     209.7 MB   disk0s1

   2:                  Apple_HFS Macintosh HD            100.5 GB   disk0s2

   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3

   4:       Microsoft Basic Data BOOTCAMP                20.0 GB    disk0s4


나의 경우 disk0s4 가 BOOTCAMP 파티션이다.


3. 권한 조정

$ sudo chmod 777 /dev/disk0s4


4. vmdk 파일 생성

vmdk 파일을 생성해야 하는데,

난 ~/VMDisk 라는 디렉토리를 만들고 여기에 생성했다.

$ cd ~/VMDisk


명령어 젤 끝의 숫자를 자신이 확인한 BOOTCAMP 의 id 에 따라 수정해준다.

disk0s4 라면 4번 파티션이다.

sudo VBoxManage internalcommands createrawvmdk -rawdisk /dev/disk0 -filename bootcamp.vmdk -partitions 4



5. 다시 한번 권한..

$ sudo chown 사용자이름 bootcamp.vmdk bootcamp-pt.vmdk

$ sudo chmod a+rw bootcamp.vmdk



6. VirtualBox 새로만들기

(1) 가상 하드디스크: 기존 하드디스크 사용하기 -> bootcamp.vmdk 지정

(2) 생성된 가상머신 설정 -> 저장소 -> IDE 컨트롤러 -> 종류:ICH6


7. 부팅 & VirtualBox 게스트에디션 설치

게스트에디션은 페러렐즈 툴 같이 원활한 가상머신을 위한 프로그램으로, 부팅 상태에서 메뉴에 잘 찾아보면 있다.

클릭하면 CD 로 마운트되고, 설치하면 된다.



재부팅 이 후에 BOOTCAMP 파티션이 자동으로 마운트되는데,

VirtualBox 사용전엔 꼭 언마운트 해줘야 한다.

또한 언마운트 후에 권한 조정도 해줘야 정상적인 사용이 가능하다..


즉, 재부팅할 때 마다

$ sudo umount /Volumes/BOOTCAMP/

$ sudo chmod 777 /dev/disk0s4


를 해줘야 한다..


재부팅시마다 자동으로 하는 방법이 있긴 하지만 일단 난 귀찮으니 패쓰~


그리고 부트캠프 파티션을 추출해버리면 시스템 환경설정 - 시동디스크에 BOOTCAMP 가 나타나지 않는다.

재부팅시 option 을 누르는 방식으로 진입해야 함..

'Mac, iOS' 카테고리의 다른 글

[Mac] .rsrc 추출  (0) 2013.12.15
homebrew 설치 / 다운그레이드  (0) 2013.11.19
맥에서 카카오톡, 소리 나오게 하기  (1) 2013.11.15
Mac openVPN 서버 설치  (0) 2013.11.14
iOS7 SpringBoard 내부 설정 (성공) [글 수정]  (0) 2013.10.02

+ Recent posts