더미 podspec을 만들어 이미지 소재 등의 라이센스도 CocoaPods와 함께 표시

CocoaPods는 iOS나 Mac 앱을 만들 때 라이브러리 관리에 편리하지만, 라이센스 목록을 자동으로 생성합니다.도 수수하게 도움이됩니다.
가까이, 본체에서 분리됩니다. 같습니다만…

VTAcknowledgementsViewController 등을 사용하면 생성되는 plist 파일을 바탕으로 쉽게 라이센스 화면을 볼 수 있습니다.

여기서 신경이 쓰이는 것은, 화상이나 음악 소재 등, CocoaPods로 관리하고 있지 않는 것들. 같은 사사인데 CocoaPods와 별도로 표시하는 것도 미묘하다고 하면 미묘합니다.

그래서 지금까지는 이런 식으로 Podfile의 post_install에서 무리하게 plist를 다시 쓰고있었습니다. 입니다만, 사용하기 어렵고, 바보같다고 생각했기 때문에, 더미의 podspec를 만들어 해 보았습니다.

tnantoka/podspecs

예를 들어, Bootstrap용 podspec은 다음과 같습니다.

Bootstrap.podspec
Pod::Spec.new do |s|
  s.name             = "Bootstrap"
  s.version          = "0.1.0"
  s.summary          = ""
  s.description      = <<-DESC
                       DESC
  s.homepage         = "https://github.com/twbs/bootstrap"
  s.license          = { :type => 'MIT', :file => 'Specs/Bootstrap/LICENSE' }
  s.author           = 'Twitter, Inc'
  s.source           = { :git => "https://github.com/tnantoka/podspecs.git", :tag => s.version.to_s }
end

Bootstrap과 같이 git 관리되고 있는 것은, 직접 twbs/bootstrap 를 source로 지정해도 됩니다만, 낭비하게 clone 해 오는 것도 있기 때문에, LICENSE 파일만 빌려 왔습니다.

그리고는, Podfile에 이 podspec를 지정해 pod install 하는 것만.

Podfile
source 'https://github.com/CocoaPods/Specs.git'

pod 'VTAcknowledgementsViewController', '~> 0.12'

pod 'Bootstrap', podspec: 'https://raw.githubusercontent.com/tnantoka/podspecs/master/Specs/Bootstrap/Bootstrap.podspec'

post_install do | installer |
  require 'fileutils'
  FileUtils.cp_r('Pods/Target Support Files/Pods/Pods-acknowledgements.plist', 'Podspecs/Pods-acknowledgements.plist')
end

VTAcknowledgementsViewController라면 이런 식으로 표시됩니다.



최선의 방법은 아니라고 생각합니다만, 얼마 동안 소재의 라이센스계는 여기서 관리해 갈 예정입니다.

다른 좋은 방법이 있다면 알려주세요!

좋은 웹페이지 즐겨찾기